Skip to content

Package: AddRepositoryComposite

AddRepositoryComposite

Coverage

1: /*******************************************************************************
2: * Copyright (c) 2011-2013 EclipseSource Muenchen GmbH and others.
3: *
4: * All rights reserved. This program and the accompanying materials
5: * are made available under the terms of the Eclipse Public License 2.0
6: * which accompanies this distribution, and is available at
7: * https://www.eclipse.org/legal/epl-2.0/
8: *
9: * SPDX-License-Identifier: EPL-2.0
10: *
11: * Contributors:
12: * Eugen Neufeld - initial API and implementation
13: ******************************************************************************/
14: package org.eclipse.emf.ecp.ui.common;
15:
16: import org.eclipse.emf.ecp.core.ECPProvider;
17: import org.eclipse.emf.ecp.core.util.ECPProperties;
18: import org.eclipse.emf.ecp.spi.common.ui.CompositeProvider;
19:
20: /**
21: * @author Eugen Neufeld
22: *
23: */
24: public interface AddRepositoryComposite extends CompositeProvider {
25:
26:         /**
27:          * A Listener interface to listen on changes during the creation of an repository.
28:          *
29:          * @author Eugen Neufeld
30:          *
31:          */
32:         public interface AddRepositoryChangeListener {
33:                 /**
34:                  * Notifies when the name is changed.
35:                  *
36:                  * @param repositoryName the new repositoryName
37:                  */
38:                 void repositoryNameChanged(String repositoryName);
39:
40:                 /**
41:                  * Notifies when the label changes.
42:                  *
43:                  * @param repositoryLabel the new repositoryLabel
44:                  */
45:                 void repositoryLabelChanged(String repositoryLabel);
46:
47:                 /**
48:                  * Notifies when the description changes.
49:                  *
50:                  * @param repositoryDescription the new repositoryDescription
51:                  */
52:                 void repositoryDescriptionChanged(String repositoryDescription);
53:
54:                 /**
55:                  * Notifies when the provider changes.
56:                  *
57:                  * @param provider the new {@link ECPProvider}
58:                  */
59:                 void repositoryProviderChanged(ECPProvider provider);
60:         }
61:
62:         /**
63:          * Gets the selected or set {@link ECPProvider} for this repository.
64:          *
65:          * @return the {@link ECPProvider} for the creation of the repository
66:          */
67:         ECPProvider getProvider();
68:
69:         /**
70:          * The name for the Repository to create.
71:          *
72:          * @return the name of the repository
73:          */
74:         String getRepositoryName();
75:
76:         /**
77:          * The description for the Repository to create.
78:          *
79:          * @return the description of the repository
80:          */
81:         String getRepositoryDescription();
82:
83:         /**
84:          * The {@link ECPProperties} for the Repository to create.
85:          *
86:          * @return the properties of the repository
87:          */
88:         ECPProperties getProperties();
89:
90:         /**
91:          * The label for the Repository to create.
92:          *
93:          * @return the label of the repository
94:          */
95:         String getRepositoryLabel();
96:
97:         /**
98:          * Register a {@link AddRepositoryChangeListener}.
99:          *
100:          * @param listener
101:          * the listener to set
102:          */
103:         void setListener(AddRepositoryChangeListener listener);
104:
105: }