1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package org.kuali.rice.kim.impl.identity;
17
18 import org.kuali.rice.core.api.criteria.QueryByCriteria;
19 import org.kuali.rice.kim.api.identity.IdentityService;
20 import org.kuali.rice.kim.api.identity.CodedAttribute;
21 import org.kuali.rice.kim.api.identity.address.EntityAddress;
22 import org.kuali.rice.kim.api.identity.affiliation.EntityAffiliation;
23 import org.kuali.rice.kim.api.identity.affiliation.EntityAffiliationType;
24 import org.kuali.rice.kim.api.identity.citizenship.EntityCitizenship;
25 import org.kuali.rice.kim.api.identity.email.EntityEmail;
26 import org.kuali.rice.kim.api.identity.employment.EntityEmployment;
27 import org.kuali.rice.kim.api.identity.entity.Entity;
28 import org.kuali.rice.kim.api.identity.entity.EntityDefault;
29 import org.kuali.rice.kim.api.identity.entity.EntityDefaultQueryResults;
30 import org.kuali.rice.kim.api.identity.entity.EntityQueryResults;
31 import org.kuali.rice.kim.api.identity.external.EntityExternalIdentifier;
32 import org.kuali.rice.kim.api.identity.external.EntityExternalIdentifierType;
33 import org.kuali.rice.kim.api.identity.name.EntityName;
34 import org.kuali.rice.kim.api.identity.personal.EntityBioDemographics;
35 import org.kuali.rice.kim.api.identity.personal.EntityEthnicity;
36 import org.kuali.rice.kim.api.identity.phone.EntityPhone;
37 import org.kuali.rice.kim.api.identity.principal.EntityNamePrincipalName;
38 import org.kuali.rice.kim.api.identity.principal.Principal;
39 import org.kuali.rice.kim.api.identity.privacy.EntityPrivacyPreferences;
40 import org.kuali.rice.kim.api.identity.residency.EntityResidency;
41 import org.kuali.rice.kim.api.identity.type.EntityTypeContactInfo;
42 import org.kuali.rice.kim.api.identity.visa.EntityVisa;
43
44 import java.util.List;
45 import java.util.Map;
46
47
48
49
50
51
52
53
54 public class IdentityCurrentAndArchivedServiceImpl implements IdentityService {
55 private final IdentityArchiveService identityArchiveService;
56 private final IdentityService innerIdentityService;
57
58
59
60
61
62 public IdentityCurrentAndArchivedServiceImpl(IdentityService innerIdentityService,
63 IdentityArchiveService identityArchiveService) {
64 this.innerIdentityService = innerIdentityService;
65 this.identityArchiveService = identityArchiveService;
66 }
67
68
69
70
71 @Override
72 public CodedAttribute getAddressType(String code) {
73 return getInnerIdentityService().getAddressType(code);
74 }
75
76 @Override
77 public EntityAffiliationType getAffiliationType(String code) {
78 return getInnerIdentityService().getAffiliationType(code);
79 }
80
81
82
83
84 @Override
85 public CodedAttribute getCitizenshipStatus(String code) {
86 return CodedAttribute.Builder.create(getInnerIdentityService().getCitizenshipStatus(code)).build();
87 }
88
89 @Override
90 public EntityName addNameToEntity(EntityName name) {
91 return getInnerIdentityService().addNameToEntity(name);
92 }
93
94 @Override
95 public EntityName updateName(EntityName name) {
96 return getInnerIdentityService().updateName(name);
97 }
98
99 @Override
100 public EntityName inactivateName(String id) {
101 return getInnerIdentityService().inactivateName(id);
102 }
103
104 @Override
105 public EntityEmployment addEmploymentToEntity(EntityEmployment employment) {
106 return getInnerIdentityService().addEmploymentToEntity(employment);
107 }
108
109 @Override
110 public EntityEmployment updateEmployment(EntityEmployment employment) {
111 return getInnerIdentityService().updateEmployment(employment);
112 }
113
114 @Override
115 public EntityEmployment inactivateEmployment(String id) {
116 return getInnerIdentityService().inactivateEmployment(id);
117 }
118
119 @Override
120 public EntityBioDemographics addBioDemographicsToEntity(EntityBioDemographics bioDemographics) {
121 return getInnerIdentityService().addBioDemographicsToEntity(bioDemographics);
122 }
123
124 @Override
125 public EntityBioDemographics updateBioDemographics(EntityBioDemographics bioDemographics) {
126 return getInnerIdentityService().updateBioDemographics(bioDemographics);
127 }
128
129
130
131
132 @Override
133 public CodedAttribute getEmailType(String code) {
134 return getInnerIdentityService().getEmailType(code);
135 }
136
137
138
139
140 @Override
141 public CodedAttribute getEmploymentStatus(String code) {
142 return getInnerIdentityService().getEmploymentStatus(code);
143 }
144
145
146
147
148
149 @Override
150 public CodedAttribute getEmploymentType(String code) {
151 return getInnerIdentityService().getEmploymentType(code);
152 }
153
154
155
156
157
158
159 @Override
160 public EntityDefault getEntityDefault(String entityId) {
161 EntityDefault entity = getInnerIdentityService().getEntityDefault(entityId);
162 if ( entity == null ) {
163 entity = getIdentityArchiveService().getEntityDefaultFromArchive(entityId);
164 } else {
165 getIdentityArchiveService().saveEntityDefaultToArchive(entity);
166 }
167 return entity;
168 }
169
170
171
172
173
174 @Override
175 public EntityDefault getEntityDefaultByPrincipalId(String principalId) {
176 EntityDefault entity = getInnerIdentityService().getEntityDefaultByPrincipalId(principalId);
177 if ( entity == null ) {
178 entity = getIdentityArchiveService().getEntityDefaultFromArchiveByPrincipalId(principalId);
179 } else {
180 getIdentityArchiveService().saveEntityDefaultToArchive(entity);
181 }
182 return entity;
183 }
184
185
186
187
188
189 @Override
190 public EntityDefault getEntityDefaultByPrincipalName(String principalName) {
191 EntityDefault entity = getInnerIdentityService().getEntityDefaultByPrincipalName(principalName);
192 if ( entity == null ) {
193 entity = getIdentityArchiveService().getEntityDefaultFromArchiveByPrincipalName(principalName);
194 } else {
195 getIdentityArchiveService().saveEntityDefaultToArchive(entity);
196 }
197 return entity;
198 }
199
200 @Override
201 public EntityDefaultQueryResults findEntityDefaults( QueryByCriteria queryByCriteria) {
202 return getInnerIdentityService().findEntityDefaults(queryByCriteria);
203 }
204
205 @Override
206 public EntityQueryResults findEntities(QueryByCriteria queryByCriteria) {
207 return getInnerIdentityService().findEntities(queryByCriteria);
208 }
209
210 @Override
211 public Entity getEntity(String entityId) {
212 return getInnerIdentityService().getEntity(entityId);
213 }
214
215 @Override
216 public Entity getEntityByPrincipalId(String principalId) {
217 return getInnerIdentityService().getEntityByPrincipalId(principalId);
218 }
219
220 @Override
221 public Entity getEntityByPrincipalName(String principalName) {
222 return getInnerIdentityService().getEntityByPrincipalName(principalName);
223 }
224
225
226 @Override
227 public Entity createEntity(Entity entity) {
228 return getInnerIdentityService().createEntity(entity);
229 }
230
231 @Override
232 public Entity updateEntity(Entity entity) {
233 return getInnerIdentityService().updateEntity(entity);
234 }
235
236 @Override
237 public Entity inactivateEntity(String entityId) {
238 return getInnerIdentityService().inactivateEntity(entityId);
239 }
240
241
242
243
244 @Override
245 public CodedAttribute getNameType(String code) {
246 return getInnerIdentityService().getNameType(code);
247 }
248
249 @Override
250 public EntityPrivacyPreferences getEntityPrivacyPreferences(
251 String entityId) {
252 return getInnerIdentityService().getEntityPrivacyPreferences(entityId);
253 }
254
255 @Override
256 public EntityPrivacyPreferences addPrivacyPreferencesToEntity(EntityPrivacyPreferences privacyPreferences) {
257 return getInnerIdentityService().addPrivacyPreferencesToEntity(privacyPreferences);
258 }
259
260 @Override
261 public EntityPrivacyPreferences updatePrivacyPreferences(EntityPrivacyPreferences privacyPreferences) {
262 return getInnerIdentityService().updatePrivacyPreferences(privacyPreferences);
263 }
264
265 @Override
266 public EntityCitizenship addCitizenshipToEntity(EntityCitizenship citizenship) {
267 return getInnerIdentityService().addCitizenshipToEntity(citizenship);
268 }
269
270 @Override
271 public EntityCitizenship updateCitizenship(EntityCitizenship citizenship) {
272 return getInnerIdentityService().updateCitizenship(citizenship);
273 }
274
275 @Override
276 public EntityCitizenship inactivateCitizenship(String id) {
277 return getInnerIdentityService().inactivateCitizenship(id);
278 }
279
280 @Override
281 public EntityEthnicity addEthnicityToEntity(EntityEthnicity ethnicity) {
282 return getInnerIdentityService().addEthnicityToEntity(ethnicity);
283 }
284
285 @Override
286 public EntityEthnicity updateEthnicity(EntityEthnicity ethnicity) {
287 return getInnerIdentityService().updateEthnicity(ethnicity);
288 }
289
290 @Override
291 public EntityResidency addResidencyToEntity(EntityResidency residency) {
292 return getInnerIdentityService().addResidencyToEntity(residency);
293 }
294
295 @Override
296 public EntityResidency updateResidency(EntityResidency residency) {
297 return getInnerIdentityService().updateResidency(residency);
298 }
299
300 @Override
301 public EntityVisa addVisaToEntity(EntityVisa visa) {
302 return getInnerIdentityService().addVisaToEntity(visa);
303 }
304
305 @Override
306 public EntityVisa updateVisa(EntityVisa visa) {
307 return getInnerIdentityService().updateVisa(visa);
308 }
309
310
311
312
313 @Override
314 public CodedAttribute getEntityType(String code) {
315 return getInnerIdentityService().getEntityType(code);
316 }
317
318 @Override
319 public EntityExternalIdentifierType getExternalIdentifierType(String code) {
320 return getInnerIdentityService().getExternalIdentifierType(code);
321 }
322
323
324
325
326
327 @Override
328 public CodedAttribute getPhoneType(String code) {
329 return getInnerIdentityService().getPhoneType(code);
330 }
331
332 @Override
333 public Principal getPrincipal(String principalId) {
334 return getInnerIdentityService().getPrincipal(principalId);
335 }
336
337 @Override
338 public Principal getPrincipalByPrincipalName(String principalName) {
339 return getInnerIdentityService().getPrincipalByPrincipalName(principalName);
340 }
341
342 @Override
343 public Principal getPrincipalByPrincipalNameAndPassword(
344 String principalName, String password) {
345 return getInnerIdentityService().getPrincipalByPrincipalNameAndPassword(
346 principalName, password);
347 }
348
349 @Override
350 public Principal addPrincipalToEntity(Principal principal) {
351 return getInnerIdentityService().addPrincipalToEntity(principal);
352 }
353
354 @Override
355 public Principal updatePrincipal(Principal principal) {
356 return getInnerIdentityService().updatePrincipal(principal);
357 }
358
359 @Override
360 public Principal inactivatePrincipal(String principalId) {
361 return getInnerIdentityService().inactivatePrincipal(principalId);
362 }
363
364 @Override
365 public Principal inactivatePrincipalByName(String principalName) {
366 return getInnerIdentityService().inactivatePrincipalByName(principalName);
367 }
368
369 @Override
370 public EntityTypeContactInfo addEntityTypeContactInfoToEntity(EntityTypeContactInfo entityTypeContactInfo) {
371 return getInnerIdentityService().addEntityTypeContactInfoToEntity(entityTypeContactInfo);
372 }
373
374 @Override
375 public EntityTypeContactInfo updateEntityTypeContactInfo(EntityTypeContactInfo entityTypeContactInfo) {
376 return getInnerIdentityService().updateEntityTypeContactInfo(entityTypeContactInfo);
377 }
378
379 @Override
380 public EntityTypeContactInfo inactivateEntityTypeContactInfo(String entityId, String entityTypeCode) {
381 return getInnerIdentityService().inactivateEntityTypeContactInfo(entityId, entityTypeCode);
382 }
383
384 @Override
385 public EntityAddress addAddressToEntity(EntityAddress address) {
386 return getInnerIdentityService().addAddressToEntity(address);
387 }
388
389 @Override
390 public EntityAddress updateAddress(EntityAddress address) {
391 return getInnerIdentityService().updateAddress(address);
392 }
393
394 @Override
395 public EntityAddress inactivateAddress(String addressId) {
396 return getInnerIdentityService().inactivateAddress(addressId);
397 }
398
399 @Override
400 public EntityEmail addEmailToEntity(EntityEmail email) {
401 return getInnerIdentityService().addEmailToEntity(email);
402 }
403
404 @Override
405 public EntityEmail updateEmail(EntityEmail email) {
406 return getInnerIdentityService().updateEmail(email);
407 }
408
409 @Override
410 public EntityEmail inactivateEmail(String emailId) {
411 return getInnerIdentityService().inactivateEmail(emailId);
412 }
413
414 @Override
415 public EntityPhone addPhoneToEntity(EntityPhone phone) {
416 return getInnerIdentityService().addPhoneToEntity(phone);
417 }
418
419 @Override
420 public EntityPhone updatePhone(EntityPhone phone) {
421 return getInnerIdentityService().updatePhone(phone);
422 }
423
424 @Override
425 public EntityPhone inactivatePhone(String phoneId) {
426 return getInnerIdentityService().inactivatePhone(phoneId);
427 }
428
429 @Override
430 public EntityExternalIdentifier addExternalIdentifierToEntity(EntityExternalIdentifier externalId) {
431 return getInnerIdentityService().addExternalIdentifierToEntity(externalId);
432 }
433
434 @Override
435 public EntityExternalIdentifier updateExternalIdentifier(EntityExternalIdentifier externalId) {
436 return getInnerIdentityService().updateExternalIdentifier(externalId);
437 }
438
439 @Override
440 public EntityAffiliation addAffiliationToEntity(EntityAffiliation affiliation) {
441 return getInnerIdentityService().addAffiliationToEntity(affiliation);
442 }
443
444 @Override
445 public EntityAffiliation updateAffiliation(EntityAffiliation affiliation) {
446 return getInnerIdentityService().updateAffiliation(affiliation);
447 }
448
449 @Override
450 public EntityAffiliation inactivateAffiliation(String id) {
451 return getInnerIdentityService().inactivateAffiliation(id);
452 }
453
454
455 private IdentityService getInnerIdentityService() {
456 return innerIdentityService;
457 }
458
459 private IdentityArchiveService getIdentityArchiveService() {
460 return identityArchiveService;
461 }
462 }