3 * Copyright (C) 2007 EDIT
4 * European Distributed Institute of Taxonomy
5 * http://www.e-taxonomy.eu
7 * The contents of this file are subject to the Mozilla Public License Version 1.1
8 * See LICENSE.TXT at the top of this package for the full license terms.
11 package eu
.etaxonomy
.taxeditor
.ui
.dialog
.selection
;
13 import java
.util
.ArrayList
;
14 import java
.util
.List
;
15 import java
.util
.UUID
;
17 import org
.eclipse
.swt
.widgets
.Shell
;
18 import org
.springframework
.security
.core
.GrantedAuthority
;
20 import eu
.etaxonomy
.cdm
.api
.conversation
.ConversationHolder
;
21 import eu
.etaxonomy
.cdm
.api
.service
.IGrantedAuthorityService
;
22 import eu
.etaxonomy
.cdm
.api
.service
.IGroupService
;
23 import eu
.etaxonomy
.cdm
.api
.service
.IUserService
;
24 import eu
.etaxonomy
.cdm
.model
.common
.GrantedAuthorityImpl
;
25 import eu
.etaxonomy
.cdm
.model
.common
.UuidAndTitleCache
;
26 import eu
.etaxonomy
.taxeditor
.newWizard
.AbstractNewEntityWizard
;
27 import eu
.etaxonomy
.taxeditor
.newWizard
.NewGrantedAuthorityWizard
;
28 import eu
.etaxonomy
.taxeditor
.newWizard
.NewGroupWizard
;
29 import eu
.etaxonomy
.taxeditor
.store
.CdmStore
;
32 * @author a.kohlbecker
33 * @created Sept 12, 2011
36 public class GrantedAuthoritySelectionDialog
extends AbstractFilteredCdmResourceSelectionDialog
<GrantedAuthorityImpl
> {
38 public static GrantedAuthority
select(Shell shell
, ConversationHolder conversation
, GrantedAuthorityImpl authority
){
40 GrantedAuthoritySelectionDialog dialog
= new GrantedAuthoritySelectionDialog(shell
, conversation
,
41 "Choose Granted Authority", false, GrantedAuthoritySelectionDialog
.class.getCanonicalName(), authority
);
43 return getSelectionFromDialog(dialog
);
54 protected GrantedAuthoritySelectionDialog(Shell shell
,
55 ConversationHolder conversation
, String title
, boolean multi
,
56 String settings
, GrantedAuthorityImpl cdmObject
) {
57 super(shell
, conversation
, title
, multi
, settings
, cdmObject
);
61 * @see eu.etaxonomy.taxeditor.ui.dialogs.filteredSelection.AbstractFilteredCdmResourceSelectionDialog#initModel()
64 protected void initModel() {
65 List
<GrantedAuthorityImpl
> authorities
= CdmStore
.getService(IGrantedAuthorityService
.class).list(GrantedAuthorityImpl
.class, null, null, null, null);
67 model
= new ArrayList
<UuidAndTitleCache
<GrantedAuthorityImpl
>>();
69 for(GrantedAuthorityImpl authority
: authorities
){
70 model
.add(new UuidAndTitleCache
<GrantedAuthorityImpl
>(GrantedAuthorityImpl
.class, authority
.getUuid(),String
.format("%s", authority
.getAuthority())));
75 * @see eu.etaxonomy.taxeditor.ui.dialogs.filteredSelection.AbstractFilteredCdmResourceSelectionDialog#getNewWizardLinkText()
78 protected String
getNewWizardLinkText() {
79 return "Create a new <A>GrantedAuthority</A>.";
83 * @see eu.etaxonomy.taxeditor.ui.dialogs.filteredSelection.AbstractFilteredCdmResourceSelectionDialog#getNewEntityWizard(java.lang.String)
86 protected AbstractNewEntityWizard
getNewEntityWizard(String parameter
) {
87 return new NewGrantedAuthorityWizard();
91 * @see eu.etaxonomy.taxeditor.ui.dialogs.filteredSelection.AbstractFilteredCdmResourceSelectionDialog#getPersistentObject(java.util.UUID)
94 protected GrantedAuthorityImpl
getPersistentObject(UUID uuid
) {
95 return CdmStore
.getService(IGrantedAuthorityService
.class).load(uuid
);
99 protected String
getTitle(GrantedAuthorityImpl authority
) {
100 return authority
!= null ? authority
.getAuthority() : "";