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.
10 package eu
.etaxonomy
.taxeditor
.bulkeditor
.input
;
12 import java
.util
.Arrays
;
13 import java
.util
.List
;
14 import java
.util
.UUID
;
16 import eu
.etaxonomy
.cdm
.api
.service
.IAgentService
;
17 import eu
.etaxonomy
.cdm
.api
.service
.config
.IIdentifiableEntityServiceConfigurator
;
18 import eu
.etaxonomy
.cdm
.model
.agent
.AgentBase
;
19 import eu
.etaxonomy
.taxeditor
.annotatedlineeditor
.IEntityCreator
;
20 import eu
.etaxonomy
.taxeditor
.bulkeditor
.IBulkEditorSortProvider
;
21 import eu
.etaxonomy
.taxeditor
.bulkeditor
.input
.BulkEditorInputTypeValues
.BulkEditorInputType
;
22 import eu
.etaxonomy
.taxeditor
.bulkeditor
.input
.entitycreator
.AgentCreator
;
23 import eu
.etaxonomy
.taxeditor
.bulkeditor
.input
.sortprovider
.IdentifiableEntitySortProvider
;
24 import eu
.etaxonomy
.taxeditor
.store
.CdmStore
;
28 * <p>AgentEditorInput class.</p>
34 public class AgentEditorInput
extends AbstractBulkEditorInput
<AgentBase
> {
39 private static final long serialVersionUID
= 3387950621617078479L;
41 /** Constant <code>ID="bulkeditor.input.author"</code> */
42 public static final String ID
= "bulkeditor.input.author";
44 private static AgentEditorInput instance
;
51 public static String
getID() {
56 * @see org.eclipse.ui.IEditorInput#getName()
61 * @return a {@link java.lang.String} object.
63 public String
getName() {
64 return BulkEditorInputType
.AGENT
.label
;
68 * @see org.eclipse.ui.IEditorInput#getToolTipText()
71 * <p>getToolTipText</p>
73 * @return a {@link java.lang.String} object.
75 public String
getToolTipText() {
80 * <p>Getter for the field <code>instance</code>.</p>
82 * @return a {@link eu.etaxonomy.taxeditor.bulkeditor.input.AbstractBulkEditorInput} object.
84 public static AbstractBulkEditorInput
getInstance() {
85 if (instance
== null) {
86 instance
= new AgentEditorInput();
92 * @see eu.etaxonomy.taxeditor.bulkeditor.input.BulkEditorInput#isMergingEnabled()
96 public boolean isMergingEnabled() {
102 public List
<AgentBase
> listEntities(IIdentifiableEntityServiceConfigurator configurator
) {
103 return CdmStore
.getSearchManager().findTeamOrPersons(configurator
);
108 public AgentBase
loadEntity(UUID uuid
) {
109 List
<String
> propertyPaths
= Arrays
.asList(new String
[]{});
110 return CdmStore
.getService(IAgentService
.class).load(uuid
, propertyPaths
);
114 public boolean delete(AgentBase entity
) {
115 return CdmStore
.getService(IAgentService
.class).delete(entity
) != null;
119 public boolean save(AgentBase entity
) {
120 return CdmStore
.getService(IAgentService
.class).saveOrUpdate(entity
) != null;
124 * @see eu.etaxonomy.taxeditor.bulkeditor.input.AbstractBulkEditorInput#getSortProviders()
127 public List
<IBulkEditorSortProvider
<AgentBase
>> getSortProviders() {
128 List
<IBulkEditorSortProvider
<AgentBase
>> sortProviders
= super.getSortProviders();
130 sortProviders
.add(0, new IdentifiableEntitySortProvider
<AgentBase
>());
132 return sortProviders
;
136 * @see eu.etaxonomy.taxeditor.bulkeditor.input.AbstractBulkEditorInput#createEntityCreator()
139 protected IEntityCreator
<AgentBase
> createEntityCreator() {
140 return new AgentCreator();