View Javadoc

1   package org.kuali.rice.kim.api.identity.name;
2   
3   import org.kuali.rice.core.api.mo.common.Defaultable;
4   import org.kuali.rice.core.api.mo.common.GloballyUnique;
5   import org.kuali.rice.core.api.mo.common.Identifiable;
6   import org.kuali.rice.core.api.mo.common.Versioned;
7   import org.kuali.rice.core.api.mo.common.active.Inactivatable;
8   import org.kuali.rice.kim.api.identity.TypeContract;
9   
10  public interface EntityNameContract extends Versioned, GloballyUnique, Defaultable, Inactivatable, Identifiable {
11      /**
12       * Gets this {@link Entity}'s id.
13       * @return the id for this {@link EntityNameContract}, or null if none has been assigned.
14       */
15  	String getEntityId();
16  
17  	/**
18       * Gets this {@link EntityNameContract}'s TypeContract.
19       * @return the type for this {@link EntityNameContract}, or null if none has been assigned.
20       */
21  	TypeContract getNameType();
22  
23  	/**
24       * Gets this {@link EntityNameContract}'s first name.
25       * @return the first name for this {@link EntityNameContract}, or null if none has been assigned.
26       */
27  	String getFirstName();
28  
29  	/**
30       * Gets this {@link EntityNameContract}'s unmasked first name.
31       * @return the unmasked first name for this {@link EntityNameContract}, or null if none has been assigned.
32       */
33  	String getFirstNameUnmasked();
34  
35  	/**
36       * Gets this {@link EntityNameContract}'s middle name.
37       * @return the middle name for this {@link EntityNameContract}, or null if none has been assigned.
38       */
39  	String getMiddleName();
40  
41  	/**
42       * Gets this {@link EntityNameContract}'s unmasked middle name.
43       * @return the unmasked middle name for this {@link EntityNameContract}, or null if none has been assigned.
44       */
45  	String getMiddleNameUnmasked();
46  
47  	/**
48       * Gets this {@link EntityNameContract}'s last name.
49       * @return the last name for this {@link EntityNameContract}, or null if none has been assigned.
50       */
51  	String getLastName();
52  
53  	/**
54       * Gets this {@link EntityNameContract}'s unmasked last name.
55       * @return the unmasked last name for this {@link EntityNameContract}, or null if none has been assigned.
56       */
57  	String getLastNameUnmasked();
58  
59  	/**
60       * Gets this {@link EntityNameContract}'s title.
61       * @return the title for this {@link EntityNameContract}, or null if none has been assigned.
62       */
63  	String getTitle();
64  
65  	/**
66       * Gets this {@link EntityNameContract}'s unmasked title.
67       * @return the unmasked title for this {@link EntityNameContract}, or null if none has been assigned.
68       */
69  	String getTitleUnmasked();
70  
71  	/**
72       * Gets this {@link EntityNameContract}'s suffix.
73       * @return the suffix for this {@link EntityNameContract}, or null if none has been assigned.
74       */
75  	String getSuffix();
76  
77  	/**
78       * Gets this {@link EntityNameContract}'s unmasked suffix.
79       * @return the unmasked suffix for this {@link EntityNameContract}, or null if none has been assigned.
80       */
81  	String getSuffixUnmasked();
82  
83  	/**
84  	 * Return the entire name as the person or system wants it displayed.
85       * @return the complete name in the format of "lastName, firstName middleName"
86  	 */
87  	String getFormattedName();
88  
89  	/**
90       * Gets this {@link EntityNameContract}'s unmasked formatted name.
91       * @return the complete name in the format of "lastName, firstName middleName"
92       */
93  	String getFormattedNameUnmasked();
94  
95      /**
96       * Returns a boolean value that determines if email fields should be suppressed.
97       * @return boolean value that determines if email should be suppressed.
98       */
99  	boolean isSuppressName();
100 }