View Javadoc
1   /*******************************************************************************
2    * Copyright 2014 Internet2
3    *  
4    * Licensed under the Apache License, Version 2.0 (the "License");
5    * you may not use this file except in compliance with the License.
6    * You may obtain a copy of the License at
7    *  
8    *   http://www.apache.org/licenses/LICENSE-2.0
9    *  
10   * Unless required by applicable law or agreed to in writing, software
11   * distributed under the License is distributed on an "AS IS" BASIS,
12   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13   * See the License for the specific language governing permissions and
14   * limitations under the License.
15   ******************************************************************************/
16  package edu.internet2.middleware.grouper.grouperUi.beans.ui;
17  
18  import java.sql.Timestamp;
19  import java.text.SimpleDateFormat;
20  import java.util.Set;
21  
22  import edu.internet2.middleware.grouper.Field;
23  import edu.internet2.middleware.grouper.grouperUi.beans.api.GuiAttributeAssign;
24  import edu.internet2.middleware.grouper.grouperUi.beans.api.GuiAttributeDef;
25  import edu.internet2.middleware.grouper.grouperUi.beans.api.GuiGcGrouperSyncMembership;
26  import edu.internet2.middleware.grouper.grouperUi.beans.api.GuiGroup;
27  import edu.internet2.middleware.grouper.grouperUi.beans.api.GuiMembership;
28  import edu.internet2.middleware.grouper.grouperUi.beans.api.GuiMembershipSubjectContainer;
29  import edu.internet2.middleware.grouper.grouperUi.beans.api.GuiPITGroup;
30  import edu.internet2.middleware.grouper.grouperUi.beans.api.GuiStem;
31  
32  
33  /**
34   * gui membership container
35   * @author mchyzer
36   *
37   */
38  public class MembershipGuiContainer {
39  
40    /**
41     * gui membership subject container being edited
42     */
43    private GuiMembershipSubjectContainer guiMembershipSubjectContainer;
44    
45    /**
46     * gui membership subject container for the privileges, map of field name to gui membership subject container
47     */
48    private GuiMembershipSubjectContainer privilegeGuiMembershipSubjectContainer;
49    
50    /**
51     * gui membership subject container being edited
52     * @return container
53     */
54    public GuiMembershipSubjectContainer getGuiMembershipSubjectContainer() {
55      return this.guiMembershipSubjectContainer;
56    }
57  
58    /**
59     * gui membership subject container being edited
60     * @param guiMembershipSubjectContainer1
61     */
62    public void setGuiMembershipSubjectContainer(
63        GuiMembershipSubjectContainer guiMembershipSubjectContainer1) {
64      this.guiMembershipSubjectContainer = guiMembershipSubjectContainer1;
65    }
66  
67    /**
68     * gui membership subject containers for the privileges, map of field name to gui membership subject container
69     * @return mape
70     */
71    public GuiMembershipSubjectContainer getPrivilegeGuiMembershipSubjectContainer() {
72      return this.privilegeGuiMembershipSubjectContainer;
73    }
74  
75    /**
76     * gui membership subject containers for the privileges, map of field name to gui membership subject container
77     * @param privilegeGuiMembershipSubjectContainers1
78     */
79    public void setPrivilegeGuiMembershipSubjectContainer(
80        GuiMembershipSubjectContainer privilegeGuiMembershipSubjectContainer1) {
81      this.privilegeGuiMembershipSubjectContainer = privilegeGuiMembershipSubjectContainer1;
82    }
83  
84    /**
85     * direct gui membership being edited
86     */
87    private GuiMembership directGuiMembership;
88    
89    /**
90     * direct gui membership being edited
91     * @return direct gui membership
92     */
93    public GuiMembership getDirectGuiMembership() {
94      return this.directGuiMembership;
95    }
96  
97    /**
98     * direct gui membership being edited
99     * @param directGuiMembership1
100    */
101   public void setDirectGuiMembership(GuiMembership directGuiMembership1) {
102     this.directGuiMembership = directGuiMembership1;
103   }
104 
105   /**
106    * if has a direct membership
107    */
108   private boolean directMembership;
109   
110   /**
111    * if has a indirect membership
112    */
113   private boolean indirectMembership;
114   
115   /**
116    * if has a direct membership
117    * @return if direct membership
118    */
119   public boolean isDirectMembership() {
120     return this.directMembership;
121   }
122 
123   /**
124    * if has a direct membership
125    * @param directMembership1
126    */
127   public void setDirectMembership(boolean directMembership1) {
128     this.directMembership = directMembership1;
129   }
130 
131   /**
132    * if has a indirect membership
133    * @return if indirect
134    */
135   public boolean isIndirectMembership() {
136     return this.indirectMembership;
137   }
138 
139   /**
140    * if has a direct membership
141    * @param indirectMembership1
142    */
143   public void setIndirectMembership(boolean indirectMembership1) {
144     this.indirectMembership = indirectMembership1;
145   }
146 
147   /**
148    * if edit membership should go back to subject
149    */
150   private boolean editMembershipFromSubject;
151   
152   /**
153    * if edit membership should go back to subject
154    * @return subject
155    */
156   public boolean isEditMembershipFromSubject() {
157     return this.editMembershipFromSubject;
158   }
159 
160   /**
161    * if edit membership should go back to subject
162    * @param editMembershipFromSubject1
163    */
164   public void setEditMembershipFromSubject(boolean editMembershipFromSubject1) {
165     this.editMembershipFromSubject = editMembershipFromSubject1;
166   }
167 
168   /**
169    * list of comma separated privileges for this trace of path including implied privilege
170    */
171   private String privilegeIncludingImpliedLabelsString;
172 
173   /**
174    * list of comma separated privileges for this trace of path including implied privilege
175    * @return the privilegeIncludingImpliedLabelsString
176    */
177   public String getPrivilegeIncludingImpliedLabelsString() {
178     return this.privilegeIncludingImpliedLabelsString;
179   }
180 
181   /**
182    * list of comma separated privileges for this trace of path including implied privilege
183    * @param privilegeIncludingImpliedLabelsString1 the privilegeIncludingImpliedLabelsString to set
184    */
185   public void setPrivilegeIncludingImpliedLabelsString(
186       String privilegeIncludingImpliedLabelsString1) {
187     this.privilegeIncludingImpliedLabelsString = privilegeIncludingImpliedLabelsString1;
188   }
189 
190   /**
191    * list of comma separated privileges for this trace of path
192    */
193   private String privilegeLabelsString;
194 
195   /**
196    * list of comma separated privileges for this trace of path
197    * @return comma separated privileges
198    */
199   public String getPrivilegeLabelsString() {
200     return this.privilegeLabelsString;
201   }
202 
203   /**
204    * list of comma separated privileges for this trace of path
205    * @param privilegeLabelsString1
206    */
207   public void setPrivilegeLabelsString(String privilegeLabelsString1) {
208     this.privilegeLabelsString = privilegeLabelsString1;
209   }
210 
211   /**
212    * number of paths the user is not allowed to see
213    */
214   private int pathCountNotAllowed;
215 
216   /**
217    * number of paths the user is not allowed to see
218    * @return paths
219    */
220   public int getPathCountNotAllowed() {
221     return this.pathCountNotAllowed;
222   }
223 
224   /**
225    * number of paths the user is not allowed to see
226    * @param pathCountNotAllowed1
227    */
228   public void setPathCountNotAllowed(int pathCountNotAllowed1) {
229     this.pathCountNotAllowed = pathCountNotAllowed1;
230   }
231 
232   /**
233    * if should trace memberships from a subject
234    */
235   private boolean traceMembershipFromSubject;
236 
237   /**
238    * if should trace memberships from a subject
239    * @return if should trace
240    */
241   public boolean isTraceMembershipFromSubject() {
242     return this.traceMembershipFromSubject;
243   }
244 
245   /**
246    * if should trace memberships from a subject
247    * @param traceMembershipFromSubject1
248    */
249   public void setTraceMembershipFromSubject(boolean traceMembershipFromSubject1) {
250     this.traceMembershipFromSubject = traceMembershipFromSubject1;
251   }
252   
253   /**
254    * if should show user audit
255    */
256   private boolean traceMembershipTimelineShowUserAudit = true;
257 
258   /**
259    * if should show pit audit
260    */
261   private boolean traceMembershipTimelineShowPITAudit = true;
262   
263   /**
264    * if should show provisioning events
265    */
266   private boolean traceMembershipTimelineShowProvisioningEvents = true;
267   
268 
269   /**
270    * if should show provisioning events
271    * @return traceMembershipTimelineShowProvisioningEvents
272    */
273   public boolean isTraceMembershipTimelineShowProvisioningEvents() {
274     return traceMembershipTimelineShowProvisioningEvents;
275   }
276 
277   /**
278    * if should show provisioning events
279    * @param traceMembershipTimelineShowProvisioningEvents
280    */
281   public void setTraceMembershipTimelineShowProvisioningEvents(
282       boolean traceMembershipTimelineShowProvisioningEvents) {
283     this.traceMembershipTimelineShowProvisioningEvents = traceMembershipTimelineShowProvisioningEvents;
284   }
285 
286   /**
287    * if should show user audit
288    * @return traceMembershipTimelineShowUserAudit
289    */
290   public boolean isTraceMembershipTimelineShowUserAudit() {
291     return traceMembershipTimelineShowUserAudit;
292   }
293 
294   /**
295    * if should show user audit
296    * @param traceMembershipTimelineShowUserAudit
297    */
298   public void setTraceMembershipTimelineShowUserAudit(
299       boolean traceMembershipTimelineShowUserAudit) {
300     this.traceMembershipTimelineShowUserAudit = traceMembershipTimelineShowUserAudit;
301   }
302 
303   /**
304    * if should show pit audit
305    * @return traceMembershipTimelineShowPITAudit
306    */
307   public boolean isTraceMembershipTimelineShowPITAudit() {
308     return traceMembershipTimelineShowPITAudit;
309   }
310 
311   /**
312    * if should show pit audit
313    * @param traceMembershipTimelineShowPITAudit
314    */
315   public void setTraceMembershipTimelineShowPITAudit(
316       boolean traceMembershipTimelineShowPITAudit) {
317     this.traceMembershipTimelineShowPITAudit = traceMembershipTimelineShowPITAudit;
318   }
319 
320   /**
321    * line number of trace starting with 0
322    */
323   private int lineNumber;
324   
325   /**
326    * line number of trace starting with 0
327    * @return line number
328    */
329   public int getLineNumber() {
330     return this.lineNumber;
331   }
332 
333   /**
334    * line number of trace starting with 0
335    * @param lineNumber1
336    */
337   public void setLineNumber(int lineNumber1) {
338     this.lineNumber = lineNumber1;
339   }
340 
341   /**
342    * gui group that is the factor of the composite
343    */
344   private GuiGroup guiGroupFactor;
345   
346   /**
347    * gui group that is the factor of the composite
348    * @return group
349    */
350   public GuiGroup getGuiGroupFactor() {
351     return this.guiGroupFactor;
352   }
353 
354   /**
355    * gui group that is the factor of the composite
356    * @param guiGroupFactor1
357    */
358   public void setGuiGroupFactor(GuiGroup guiGroupFactor1) {
359     this.guiGroupFactor = guiGroupFactor1;
360   }
361 
362   /**
363    * current gui group e.g. when tracing memberships
364    */
365   private GuiGroup guiGroupCurrent;
366   
367   /**
368    * current gui stem e.g. when tracing memberships
369    */
370   private GuiStem guiStemCurrent;
371   
372   /**
373    * current gui membership, e.g. when tracing memberships
374    */
375   private GuiMembership guiMembershipCurrent;
376   
377   /**
378    * current gui membership, e.g. when tracing memberships
379    * @return gui membership
380    */
381   public GuiMembership getGuiMembershipCurrent() {
382     return this.guiMembershipCurrent;
383   }
384   
385   /**
386    * current gui membership, e.g. when tracing memberships
387    * @param guiMembershipCurrent1 
388    */
389   public void setGuiMembershipCurrent(GuiMembership guiMembershipCurrent1) {
390     this.guiMembershipCurrent = guiMembershipCurrent1;
391   }
392   
393   /**
394    * @return true if current membership (e.g. when tracing memberships) has membership enabled/disabled dates
395    */
396   public boolean getGuiMembershipCurrentHasMembershipDates() {
397     if (this.guiMembershipCurrent != null) {
398       if (this.guiMembershipCurrent.getMembership().getEnabledTime() != null || this.guiMembershipCurrent.getMembership().getDisabledTime() != null) {
399         return true;
400       }
401     }
402     
403     return false;
404   }
405   
406   /**
407    * current gui stem e.g. when tracing memberships
408    * @return gui stem
409    */
410   public GuiStem getGuiStemCurrent() {
411     return this.guiStemCurrent;
412   }
413 
414   /**
415    * current gui stem e.g. when tracing memberships
416    * @param guiStemCurrent1
417    */
418   public void setGuiStemCurrent(GuiStem guiStemCurrent1) {
419     this.guiStemCurrent = guiStemCurrent1;
420   }
421 
422   /**
423    * current gui attributeDef e.g. when tracing memberships
424    * @return attribute def
425    */
426   public GuiAttributeDef getGuiAttributeDefCurrent() {
427     return this.guiAttributeDefCurrent;
428   }
429 
430   /**
431    * current gui attributeDef e.g. when tracing memberships
432    * @param guiAttributeDefCurrent1
433    */
434   public void setGuiAttributeDefCurrent(GuiAttributeDef guiAttributeDefCurrent1) {
435     this.guiAttributeDefCurrent = guiAttributeDefCurrent1;
436   }
437 
438   /**
439    * current gui attributeDef e.g. when tracing memberships
440    */
441   private GuiAttributeDef guiAttributeDefCurrent;
442   
443   /**
444    * current gui group e.g. when tracing memberships
445    * @return gui group
446    */
447   public GuiGroup getGuiGroupCurrent() {
448     return this.guiGroupCurrent;
449   }
450 
451   /**
452    * current gui group e.g. when tracing memberships
453    * @param guiGroupCurrent1
454    */
455   public void setGuiGroupCurrent(GuiGroup guiGroupCurrent1) {
456     this.guiGroupCurrent = guiGroupCurrent1;
457   }
458 
459 
460   /**
461    * string of trace memberships
462    */
463   private String traceMembershipsString;
464   
465   /**
466    * string of trace memberships
467    * @return trace memberships
468    */
469   public String getTraceMembershipsString() {
470     return this.traceMembershipsString;
471   }
472 
473   /**
474    * string of trace memberships
475    * @param traceMembershipsString1
476    */
477   public void setTraceMembershipsString(String traceMembershipsString1) {
478     this.traceMembershipsString = traceMembershipsString1;
479   }
480   
481   /**
482    * string of membership timeline
483    */
484   private String traceMembershipTimelineString;
485   
486   
487   /**
488    * @return string of membership timeline
489    */
490   public String getTraceMembershipTimelineString() {
491     return traceMembershipTimelineString;
492   }
493 
494   /**
495    * string of membership timeline
496    * @param traceMembershipTimelineString
497    */
498   public void setTraceMembershipTimelineString(String traceMembershipTimelineString) {
499     this.traceMembershipTimelineString = traceMembershipTimelineString;
500   }
501 
502   /**
503    * string of trace pit membership
504    */
505   private String tracePITMembershipString;
506   
507   /**
508    * string of trace pit membership
509    * @return trace pit membership
510    */
511   public String getTracePITMembershipString() {
512     return this.tracePITMembershipString;
513   }
514 
515   /**
516    * string of trace pit membership
517    * @param tracePITMembershipString1
518    */
519   public void setTracePITMembershipString(String tracePITMembershipString1) {
520     this.tracePITMembershipString = tracePITMembershipString1;
521   }
522 
523 
524   /**
525    * field on the screen
526    */
527   private Field field;
528 
529   /**
530    * if should trace memberships from a membership
531    */
532   private boolean traceMembershipFromMembership;
533 
534   /**
535    * if should trace memberships from a membership
536    * @return should trace
537    */
538   public boolean isTraceMembershipFromMembership() {
539     return this.traceMembershipFromMembership;
540   }
541 
542   /**
543    * if should trace memberships from a membership
544    * @param traceMembershipFromMembership1
545    */
546   public void setTraceMembershipFromMembership(boolean traceMembershipFromMembership1) {
547     this.traceMembershipFromMembership = traceMembershipFromMembership1;
548   }
549 
550   /**
551    * field on the screen
552    * @return field
553    */
554   public Field getField() {
555     return this.field;
556   }
557 
558   /**
559    * field on the screen
560    * @param field1
561    */
562   public void setField(Field field1) {
563     this.field = field1;
564   }
565   
566   /**
567    * attributes assigned to this subject.
568    */
569   private Set<GuiAttributeAssign> guiAttributeAssigns;
570   
571   /**
572    * attributes assigned to this subject.
573    * @return
574    */
575   public Set<GuiAttributeAssign> getGuiAttributeAssigns() {
576     return guiAttributeAssigns;
577   }
578   
579   /**
580    * attributes assigned to this subject.
581    * @param guiAttributeAssigns
582    */
583   public void setGuiAttributeAssigns(Set<GuiAttributeAssign> guiAttributeAssigns) {
584     this.guiAttributeAssigns = guiAttributeAssigns;
585   }
586   
587   /**
588    * current gui pit group e.g. when tracing memberships
589    */
590   private GuiPITGroup guiPITGroupCurrent;
591   
592 
593   /**
594    * current gui pit group e.g. when tracing memberships
595    * @return gui pit group
596    */
597   public GuiPITGroup getGuiPITGroupCurrent() {
598     return this.guiPITGroupCurrent;
599   }
600 
601   /**
602    * current gui pit group e.g. when tracing memberships
603    * @param guiPITGroupCurrent1
604    */
605   public void setGuiPITGroupCurrent(GuiPITGroup guiPITGroupCurrent1) {
606     this.guiPITGroupCurrent = guiPITGroupCurrent1;
607   }
608   
609   /**
610    * current gui audit date
611    */
612   private Timestamp guiAuditDateCurrent;
613 
614   /**
615    * current gui audit date
616    * @return timestamp
617    */
618   public Timestamp getGuiAuditDateCurrent() {
619     return guiAuditDateCurrent;
620   }
621 
622   /**
623    * current gui audit date
624    * @param guiAuditDateCurrent
625    */
626   public void setGuiAuditDateCurrent(Timestamp guiAuditDateCurrent) {
627     this.guiAuditDateCurrent = guiAuditDateCurrent;
628   }
629   
630   /**
631    * audit label string yyyy/MM/dd h:mm a
632    * @return the audit label string yyyy/MM/dd h:mm:ss a
633    */
634   public String getGuiAuditDateLabelCurrent() {
635 
636     if (this.guiAuditDateCurrent == null) {
637       return null;
638     }
639 
640     SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy/MM/dd h:mm:ss a");
641 
642     return simpleDateFormat.format(guiAuditDateCurrent);
643   }
644   
645   private GuiAuditEntry guiAuditEntryCurrent;
646 
647   /**
648    * @return current gui audit entry
649    */
650   public GuiAuditEntry getGuiAuditEntryCurrent() {
651     return guiAuditEntryCurrent;
652   }
653 
654   /**
655    * @param guiAuditEntryCurrent
656    */
657   public void setGuiAuditEntryCurrent(GuiAuditEntry guiAuditEntryCurrent) {
658     this.guiAuditEntryCurrent = guiAuditEntryCurrent;
659   }
660   
661   private GuiGcGrouperSyncMembership guiGcGrouperSyncMembershipCurrent;
662 
663   /**
664    * @return current gui GcGrouperSyncMembership
665    */
666   public GuiGcGrouperSyncMembership getGuiGcGrouperSyncMembershipCurrent() {
667     return guiGcGrouperSyncMembershipCurrent;
668   }
669 
670   /**
671    * @param guiGcGrouperSyncMembershipCurrent
672    */
673   public void setGuiGcGrouperSyncMembershipCurrent(
674       GuiGcGrouperSyncMembership guiGcGrouperSyncMembershipCurrent) {
675     this.guiGcGrouperSyncMembershipCurrent = guiGcGrouperSyncMembershipCurrent;
676   }
677 }