You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ace.apache.org by pa...@apache.org on 2011/06/22 16:55:30 UTC
svn commit: r1138494 - in /incubator/ace/trunk:
ace-client-repository-api/src/main/java/org/apache/ace/client/repository/helper/
ace-client-repository-helper-bundle/src/main/java/org/apache/ace/client/repository/helper/bundle/impl/
ace-client-repositor...
Author: pauls
Date: Wed Jun 22 14:55:30 2011
New Revision: 1138494
URL: http://svn.apache.org/viewvc?rev=1138494&view=rev
Log:
Change the way we handle identity across the board. We now do it based on the definintion of an repository object (ACE-149).
Modified:
incubator/ace/trunk/ace-client-repository-api/src/main/java/org/apache/ace/client/repository/helper/ArtifactRecognizer.java
incubator/ace/trunk/ace-client-repository-helper-bundle/src/main/java/org/apache/ace/client/repository/helper/bundle/impl/BundleHelperImpl.java
incubator/ace/trunk/ace-client-repository-helper-configuration/src/main/java/org/apache/ace/client/repository/helper/configuration/impl/ConfigurationHelperImpl.java
incubator/ace/trunk/ace-client-repository-helper-user/src/main/java/org/apache/ace/client/repository/helper/user/impl/UserHelperImpl.java
incubator/ace/trunk/ace-client-repository-impl/src/main/java/org/apache/ace/client/repository/impl/ArtifactObjectImpl.java
incubator/ace/trunk/ace-client-repository-impl/src/main/java/org/apache/ace/client/repository/impl/ArtifactRepositoryImpl.java
incubator/ace/trunk/ace-client-repository-impl/src/main/java/org/apache/ace/client/repository/stateful/impl/StatefulGatewayObjectImpl.java
incubator/ace/trunk/ace-client-repository-impl/src/main/java/org/apache/ace/client/repository/stateful/impl/StatefulGatewayRepositoryImpl.java
incubator/ace/trunk/ace-client-repository-impl/src/test/java/org/apache/ace/client/repository/impl/ArtifactTest.java
incubator/ace/trunk/ace-integrationtests/src/test/java/org/apache/ace/it/repositoryadmin/RepositoryAdminTest.java
incubator/ace/trunk/ace-webui-vaadin/src/main/java/org/apache/ace/webui/NamedObject.java
incubator/ace/trunk/ace-webui-vaadin/src/main/java/org/apache/ace/webui/vaadin/Associations.java
incubator/ace/trunk/ace-webui-vaadin/src/main/java/org/apache/ace/webui/vaadin/NamedArtifactObject.java
incubator/ace/trunk/ace-webui-vaadin/src/main/java/org/apache/ace/webui/vaadin/NamedDistributionObject.java
incubator/ace/trunk/ace-webui-vaadin/src/main/java/org/apache/ace/webui/vaadin/NamedFeatureObject.java
incubator/ace/trunk/ace-webui-vaadin/src/main/java/org/apache/ace/webui/vaadin/NamedTargetObject.java
incubator/ace/trunk/ace-webui-vaadin/src/main/java/org/apache/ace/webui/vaadin/VaadinClient.java
Modified: incubator/ace/trunk/ace-client-repository-api/src/main/java/org/apache/ace/client/repository/helper/ArtifactRecognizer.java
URL: http://svn.apache.org/viewvc/incubator/ace/trunk/ace-client-repository-api/src/main/java/org/apache/ace/client/repository/helper/ArtifactRecognizer.java?rev=1138494&r1=1138493&r2=1138494&view=diff
==============================================================================
--- incubator/ace/trunk/ace-client-repository-api/src/main/java/org/apache/ace/client/repository/helper/ArtifactRecognizer.java (original)
+++ incubator/ace/trunk/ace-client-repository-api/src/main/java/org/apache/ace/client/repository/helper/ArtifactRecognizer.java Wed Jun 22 14:55:30 2011
@@ -55,4 +55,13 @@ public interface ArtifactRecognizer
* <code>false</code> otherwise.
*/
public boolean canHandle(String mimetype);
+
+ /**
+ * Returns a preferred extension for the file name if a new one is created.
+ *
+ * @param artifact The url to the artifact.
+ *
+ * @return The extension that is preferred or an empty string if there is none.
+ */
+ public String getExtension(URL artifact);
}
\ No newline at end of file
Modified: incubator/ace/trunk/ace-client-repository-helper-bundle/src/main/java/org/apache/ace/client/repository/helper/bundle/impl/BundleHelperImpl.java
URL: http://svn.apache.org/viewvc/incubator/ace/trunk/ace-client-repository-helper-bundle/src/main/java/org/apache/ace/client/repository/helper/bundle/impl/BundleHelperImpl.java?rev=1138494&r1=1138493&r2=1138494&view=diff
==============================================================================
--- incubator/ace/trunk/ace-client-repository-helper-bundle/src/main/java/org/apache/ace/client/repository/helper/bundle/impl/BundleHelperImpl.java (original)
+++ incubator/ace/trunk/ace-client-repository-helper-bundle/src/main/java/org/apache/ace/client/repository/helper/bundle/impl/BundleHelperImpl.java Wed Jun 22 14:55:30 2011
@@ -275,4 +275,8 @@ public class BundleHelperImpl implements
public ArtifactPreprocessor getPreprocessor() {
return null;
}
+
+ public String getExtension(URL artifact) {
+ return ".jar";
+ }
}
\ No newline at end of file
Modified: incubator/ace/trunk/ace-client-repository-helper-configuration/src/main/java/org/apache/ace/client/repository/helper/configuration/impl/ConfigurationHelperImpl.java
URL: http://svn.apache.org/viewvc/incubator/ace/trunk/ace-client-repository-helper-configuration/src/main/java/org/apache/ace/client/repository/helper/configuration/impl/ConfigurationHelperImpl.java?rev=1138494&r1=1138493&r2=1138494&view=diff
==============================================================================
--- incubator/ace/trunk/ace-client-repository-helper-configuration/src/main/java/org/apache/ace/client/repository/helper/configuration/impl/ConfigurationHelperImpl.java (original)
+++ incubator/ace/trunk/ace-client-repository-helper-configuration/src/main/java/org/apache/ace/client/repository/helper/configuration/impl/ConfigurationHelperImpl.java Wed Jun 22 14:55:30 2011
@@ -42,10 +42,17 @@ public class ConfigurationHelperImpl imp
public Map<String, String> extractMetaData(URL artifact) throws IllegalArgumentException {
Map<String, String> result = new HashMap<String, String>();
- result.put(KEY_FILENAME, new File(artifact.getFile()).getName());
result.put(ArtifactObject.KEY_PROCESSOR_PID, PROCESSOR);
result.put(ArtifactObject.KEY_MIMETYPE, MIMETYPE);
- result.put(ArtifactObject.KEY_ARTIFACT_NAME, result.get(KEY_FILENAME));
+ String name = new File(artifact.getFile()).getName();
+ String key = KEY_FILENAME + "-";
+ int idx = name.indexOf(key);
+ if (idx > -1) {
+ int endIdx = name.indexOf("-", idx + key.length());
+ name = name.substring(idx + key.length(), (endIdx > -1) ? endIdx : (name.length() - getExtension(artifact).length()));
+ }
+ result.put(ArtifactObject.KEY_ARTIFACT_NAME, name);
+ result.put(KEY_FILENAME, name);
return result;
}
@@ -100,4 +107,9 @@ public class ConfigurationHelperImpl imp
public ArtifactPreprocessor getPreprocessor() {
return VELOCITY_ARTIFACT_PREPROCESSOR;
}
+
+ public String getExtension(URL artifact) {
+ return ".xml";
+ }
+
}
\ No newline at end of file
Modified: incubator/ace/trunk/ace-client-repository-helper-user/src/main/java/org/apache/ace/client/repository/helper/user/impl/UserHelperImpl.java
URL: http://svn.apache.org/viewvc/incubator/ace/trunk/ace-client-repository-helper-user/src/main/java/org/apache/ace/client/repository/helper/user/impl/UserHelperImpl.java?rev=1138494&r1=1138493&r2=1138494&view=diff
==============================================================================
--- incubator/ace/trunk/ace-client-repository-helper-user/src/main/java/org/apache/ace/client/repository/helper/user/impl/UserHelperImpl.java (original)
+++ incubator/ace/trunk/ace-client-repository-helper-user/src/main/java/org/apache/ace/client/repository/helper/user/impl/UserHelperImpl.java Wed Jun 22 14:55:30 2011
@@ -45,7 +45,14 @@ public class UserHelperImpl implements A
Map<String, String> result = new HashMap<String, String>();
result.put(ArtifactObject.KEY_PROCESSOR_PID, PROCESSOR);
result.put(ArtifactObject.KEY_MIMETYPE, MIMETYPE);
- result.put(ArtifactObject.KEY_ARTIFACT_NAME, new File(artifact.getFile()).getName());
+ String name = new File(artifact.getFile()).getName();
+ String key = ArtifactObject.KEY_ARTIFACT_NAME + "-";
+ int idx = name.indexOf(key);
+ if (idx > -1) {
+ int endIdx = name.indexOf("-", idx + key.length());
+ name = name.substring(idx + key.length(), (endIdx > -1) ? endIdx : (name.length() - getExtension(artifact).length()));
+ }
+ result.put(ArtifactObject.KEY_ARTIFACT_NAME, name);
return result;
}
@@ -104,4 +111,8 @@ public class UserHelperImpl implements A
public ArtifactPreprocessor getPreprocessor() {
return VELOCITY_ARTIFACT_PREPROCESSOR;
}
+
+ public String getExtension(URL artifact) {
+ return ".xml";
+ }
}
\ No newline at end of file
Modified: incubator/ace/trunk/ace-client-repository-impl/src/main/java/org/apache/ace/client/repository/impl/ArtifactObjectImpl.java
URL: http://svn.apache.org/viewvc/incubator/ace/trunk/ace-client-repository-impl/src/main/java/org/apache/ace/client/repository/impl/ArtifactObjectImpl.java?rev=1138494&r1=1138493&r2=1138494&view=diff
==============================================================================
--- incubator/ace/trunk/ace-client-repository-impl/src/main/java/org/apache/ace/client/repository/impl/ArtifactObjectImpl.java (original)
+++ incubator/ace/trunk/ace-client-repository-impl/src/main/java/org/apache/ace/client/repository/impl/ArtifactObjectImpl.java Wed Jun 22 14:55:30 2011
@@ -55,12 +55,11 @@ public class ArtifactObjectImpl extends
}
private static String[] completeMandatoryAttributes(String[] mandatory) {
- String[] result = new String[mandatory.length + 2];
+ String[] result = new String[mandatory.length + 1];
for (int i = 0; i < mandatory.length; i++) {
result[i] = mandatory[i];
}
result[mandatory.length] = KEY_MIMETYPE;
- result[mandatory.length + 1 ] = KEY_URL;
return result;
}
@@ -94,15 +93,7 @@ public class ArtifactObjectImpl extends
@Override
String[] getDefiningKeys() {
- String[] fromHelper = getHelper().getDefiningKeys();
-
- String[] result = new String[fromHelper.length + 1];
- for (int i = 0; i < fromHelper.length; i++) {
- result[i] = fromHelper[i];
- }
- result[fromHelper.length] = KEY_URL;
-
- return result;
+ return getHelper().getDefiningKeys().clone();
}
public String getURL() {
Modified: incubator/ace/trunk/ace-client-repository-impl/src/main/java/org/apache/ace/client/repository/impl/ArtifactRepositoryImpl.java
URL: http://svn.apache.org/viewvc/incubator/ace/trunk/ace-client-repository-impl/src/main/java/org/apache/ace/client/repository/impl/ArtifactRepositoryImpl.java?rev=1138494&r1=1138493&r2=1138494&view=diff
==============================================================================
--- incubator/ace/trunk/ace-client-repository-impl/src/main/java/org/apache/ace/client/repository/impl/ArtifactRepositoryImpl.java (original)
+++ incubator/ace/trunk/ace-client-repository-impl/src/main/java/org/apache/ace/client/repository/impl/ArtifactRepositoryImpl.java Wed Jun 22 14:55:30 2011
@@ -23,6 +23,7 @@ import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.HttpURLConnection;
+import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLConnection;
import java.util.ArrayList;
@@ -141,7 +142,15 @@ public class ArtifactRepositoryImpl exte
@Override
ArtifactObjectImpl createNewInhabitant(Map<String, String> attributes, Map<String, String> tags) {
ArtifactHelper helper = getHelper(attributes.get(ArtifactObject.KEY_MIMETYPE));
- return new ArtifactObjectImpl(helper.checkAttributes(attributes), helper.getMandatoryAttributes(), tags, this, this);
+ ArtifactObjectImpl ao = new ArtifactObjectImpl(helper.checkAttributes(attributes), helper.getMandatoryAttributes(), tags, this, this);
+ if ((ao.getAttribute("upload") != null) && (m_obrBase != null)){
+ try {
+ ao.addAttribute(ArtifactObject.KEY_URL, new URL(m_obrBase, ao.getDefinition() + ao.getAttribute("upload")).toString());
+ } catch (MalformedURLException e) {
+ throw new IllegalStateException(e);
+ }
+ }
+ return ao;
}
@Override
@@ -346,22 +355,38 @@ public class ArtifactRepositoryImpl exte
Map<String, String> tags = new HashMap<String, String>();
helper.checkAttributes(attributes);
-
- URL location;
- if (upload) {
- location = upload(artifact, mimetype);
- }
- else {
- location = artifact;
- }
-
- attributes.put(ArtifactObject.KEY_URL, location.toString());
attributes.put(ArtifactObject.KEY_ARTIFACT_DESCRIPTION, "");
if (overwrite) {
attributes.put(ArtifactObject.KEY_MIMETYPE, mimetype);
}
- return create(attributes, tags);
+ String artifactURL = artifact.toString();
+
+ attributes.put(ArtifactObject.KEY_URL, artifactURL);
+
+ if (upload) {
+ attributes.put("upload", recognizer.getExtension(artifact));
+ }
+
+ ArtifactObject result = create(attributes, tags);
+
+ if (upload) {
+ try {
+ upload(artifact, result.getDefinition() + attributes.get("upload"), mimetype);
+ } catch (IOException ex) {
+ remove(result);
+ throw ex;
+ }
+ finally {
+ try {
+ attributes.remove("upload");
+ } catch (Exception ex) {
+ // Not much we can do
+ }
+ }
+ }
+ return result;
+
}
/**
@@ -407,7 +432,7 @@ public class ArtifactRepositoryImpl exte
* @return The persistent URL of this artifact.
* @throws IOException for any problem uploading the artifact.
*/
- private URL upload(URL artifact, String mimetype) throws IOException {
+ private URL upload(URL artifact, String definition, String mimetype) throws IOException {
if (m_obrBase == null) {
throw new IOException("There is no storage available for this artifact.");
}
@@ -417,7 +442,7 @@ public class ArtifactRepositoryImpl exte
URL url = null;
try {
input = artifact.openStream();
- url = new URL(m_obrBase, new File(artifact.getFile()).getName());
+ url = new URL(m_obrBase, definition);
URLConnection connection = url.openConnection();
connection.setDoOutput(true);
connection.setDoInput(true);
Modified: incubator/ace/trunk/ace-client-repository-impl/src/main/java/org/apache/ace/client/repository/stateful/impl/StatefulGatewayObjectImpl.java
URL: http://svn.apache.org/viewvc/incubator/ace/trunk/ace-client-repository-impl/src/main/java/org/apache/ace/client/repository/stateful/impl/StatefulGatewayObjectImpl.java?rev=1138494&r1=1138493&r2=1138494&view=diff
==============================================================================
--- incubator/ace/trunk/ace-client-repository-impl/src/main/java/org/apache/ace/client/repository/stateful/impl/StatefulGatewayObjectImpl.java (original)
+++ incubator/ace/trunk/ace-client-repository-impl/src/main/java/org/apache/ace/client/repository/stateful/impl/StatefulGatewayObjectImpl.java Wed Jun 22 14:55:30 2011
@@ -571,10 +571,7 @@ public class StatefulGatewayObjectImpl i
}
public String getDefinition() {
- synchronized(m_lock) {
- ensureGatewayPresent();
- return m_gatewayObject.getDefinition();
- }
+ return "gateway-" + KEY_ID + "-" + getID();
}
private class ExtendedEnumeration<T> implements Enumeration<T> {
Modified: incubator/ace/trunk/ace-client-repository-impl/src/main/java/org/apache/ace/client/repository/stateful/impl/StatefulGatewayRepositoryImpl.java
URL: http://svn.apache.org/viewvc/incubator/ace/trunk/ace-client-repository-impl/src/main/java/org/apache/ace/client/repository/stateful/impl/StatefulGatewayRepositoryImpl.java?rev=1138494&r1=1138493&r2=1138494&view=diff
==============================================================================
--- incubator/ace/trunk/ace-client-repository-impl/src/main/java/org/apache/ace/client/repository/stateful/impl/StatefulGatewayRepositoryImpl.java (original)
+++ incubator/ace/trunk/ace-client-repository-impl/src/main/java/org/apache/ace/client/repository/stateful/impl/StatefulGatewayRepositoryImpl.java Wed Jun 22 14:55:30 2011
@@ -511,6 +511,7 @@ public class StatefulGatewayRepositoryIm
if (bundleVersion != null) {
directives.put(BundleHelper.KEY_VERSION, bundleVersion);
}
+
directives.put(DeploymentArtifact.DIRECTIVE_KEY_BASEURL, bundle.getURL());
result.add(m_deploymentRepository.createDeploymentArtifact(bundle.getURL(), directives));
}
Modified: incubator/ace/trunk/ace-client-repository-impl/src/test/java/org/apache/ace/client/repository/impl/ArtifactTest.java
URL: http://svn.apache.org/viewvc/incubator/ace/trunk/ace-client-repository-impl/src/test/java/org/apache/ace/client/repository/impl/ArtifactTest.java?rev=1138494&r1=1138493&r2=1138494&view=diff
==============================================================================
--- incubator/ace/trunk/ace-client-repository-impl/src/test/java/org/apache/ace/client/repository/impl/ArtifactTest.java (original)
+++ incubator/ace/trunk/ace-client-repository-impl/src/test/java/org/apache/ace/client/repository/impl/ArtifactTest.java Wed Jun 22 14:55:30 2011
@@ -153,11 +153,11 @@ class MockHelper implements ArtifactHelp
}
public String[] getDefiningKeys() {
- return new String[0];
+ return new String[]{ArtifactObject.KEY_URL};
}
public String[] getMandatoryAttributes() {
- return new String[0];
+ return new String[]{ArtifactObject.KEY_URL};
}
public boolean canUse(ArtifactObject object) {
Modified: incubator/ace/trunk/ace-integrationtests/src/test/java/org/apache/ace/it/repositoryadmin/RepositoryAdminTest.java
URL: http://svn.apache.org/viewvc/incubator/ace/trunk/ace-integrationtests/src/test/java/org/apache/ace/it/repositoryadmin/RepositoryAdminTest.java?rev=1138494&r1=1138493&r2=1138494&view=diff
==============================================================================
--- incubator/ace/trunk/ace-integrationtests/src/test/java/org/apache/ace/it/repositoryadmin/RepositoryAdminTest.java (original)
+++ incubator/ace/trunk/ace-integrationtests/src/test/java/org/apache/ace/it/repositoryadmin/RepositoryAdminTest.java Wed Jun 22 14:55:30 2011
@@ -1935,11 +1935,11 @@ class MockArtifactHelper implements Arti
return null;
}
public String[] getDefiningKeys() {
- return new String[0];
+ return new String[] {ArtifactObject.KEY_URL};
}
public String[] getMandatoryAttributes() {
- return new String[0];
+ return new String[] {ArtifactObject.KEY_URL};
}
public <TYPE extends ArtifactObject> String getAssociationFilter(TYPE obj, Map<String, String> properties) {
Modified: incubator/ace/trunk/ace-webui-vaadin/src/main/java/org/apache/ace/webui/NamedObject.java
URL: http://svn.apache.org/viewvc/incubator/ace/trunk/ace-webui-vaadin/src/main/java/org/apache/ace/webui/NamedObject.java?rev=1138494&r1=1138493&r2=1138494&view=diff
==============================================================================
--- incubator/ace/trunk/ace-webui-vaadin/src/main/java/org/apache/ace/webui/NamedObject.java (original)
+++ incubator/ace/trunk/ace-webui-vaadin/src/main/java/org/apache/ace/webui/NamedObject.java Wed Jun 22 14:55:30 2011
@@ -7,4 +7,5 @@ public interface NamedObject {
String getDescription();
void setDescription(String description);
RepositoryObject getObject();
+ public String getDefinition();
}
\ No newline at end of file
Modified: incubator/ace/trunk/ace-webui-vaadin/src/main/java/org/apache/ace/webui/vaadin/Associations.java
URL: http://svn.apache.org/viewvc/incubator/ace/trunk/ace-webui-vaadin/src/main/java/org/apache/ace/webui/vaadin/Associations.java?rev=1138494&r1=1138493&r2=1138494&view=diff
==============================================================================
--- incubator/ace/trunk/ace-webui-vaadin/src/main/java/org/apache/ace/webui/vaadin/Associations.java (original)
+++ incubator/ace/trunk/ace-webui-vaadin/src/main/java/org/apache/ace/webui/vaadin/Associations.java Wed Jun 22 14:55:30 2011
@@ -72,7 +72,7 @@ public class Associations {
return null;
}
public boolean equals(Object itemId, RepositoryObject object) {
- return (getNamedObject(object).getName().equals(itemId));
+ return (getNamedObject(object).getDefinition().equals(itemId));
}
};
}
@@ -203,7 +203,7 @@ public class Associations {
if (object != null) {
NamedObject namedObject = getNamedObject(object);
if (namedObject != null) {
- if (namedObject.getName().equals(value)) {
+ if (namedObject.getDefinition().equals(value)) {
return object;
}
}
Modified: incubator/ace/trunk/ace-webui-vaadin/src/main/java/org/apache/ace/webui/vaadin/NamedArtifactObject.java
URL: http://svn.apache.org/viewvc/incubator/ace/trunk/ace-webui-vaadin/src/main/java/org/apache/ace/webui/vaadin/NamedArtifactObject.java?rev=1138494&r1=1138493&r2=1138494&view=diff
==============================================================================
--- incubator/ace/trunk/ace-webui-vaadin/src/main/java/org/apache/ace/webui/vaadin/NamedArtifactObject.java (original)
+++ incubator/ace/trunk/ace-webui-vaadin/src/main/java/org/apache/ace/webui/vaadin/NamedArtifactObject.java Wed Jun 22 14:55:30 2011
@@ -26,4 +26,8 @@ public class NamedArtifactObject impleme
public RepositoryObject getObject() {
return m_target;
}
+
+ public String getDefinition() {
+ return m_target.getDefinition();
+ }
}
\ No newline at end of file
Modified: incubator/ace/trunk/ace-webui-vaadin/src/main/java/org/apache/ace/webui/vaadin/NamedDistributionObject.java
URL: http://svn.apache.org/viewvc/incubator/ace/trunk/ace-webui-vaadin/src/main/java/org/apache/ace/webui/vaadin/NamedDistributionObject.java?rev=1138494&r1=1138493&r2=1138494&view=diff
==============================================================================
--- incubator/ace/trunk/ace-webui-vaadin/src/main/java/org/apache/ace/webui/vaadin/NamedDistributionObject.java (original)
+++ incubator/ace/trunk/ace-webui-vaadin/src/main/java/org/apache/ace/webui/vaadin/NamedDistributionObject.java Wed Jun 22 14:55:30 2011
@@ -26,4 +26,8 @@ public class NamedDistributionObject imp
public RepositoryObject getObject() {
return m_target;
}
+
+ public String getDefinition() {
+ return m_target.getDefinition();
+ }
}
\ No newline at end of file
Modified: incubator/ace/trunk/ace-webui-vaadin/src/main/java/org/apache/ace/webui/vaadin/NamedFeatureObject.java
URL: http://svn.apache.org/viewvc/incubator/ace/trunk/ace-webui-vaadin/src/main/java/org/apache/ace/webui/vaadin/NamedFeatureObject.java?rev=1138494&r1=1138493&r2=1138494&view=diff
==============================================================================
--- incubator/ace/trunk/ace-webui-vaadin/src/main/java/org/apache/ace/webui/vaadin/NamedFeatureObject.java (original)
+++ incubator/ace/trunk/ace-webui-vaadin/src/main/java/org/apache/ace/webui/vaadin/NamedFeatureObject.java Wed Jun 22 14:55:30 2011
@@ -26,4 +26,8 @@ public class NamedFeatureObject implemen
public RepositoryObject getObject() {
return m_target;
}
+
+ public String getDefinition() {
+ return m_target.getDefinition();
+ }
}
\ No newline at end of file
Modified: incubator/ace/trunk/ace-webui-vaadin/src/main/java/org/apache/ace/webui/vaadin/NamedTargetObject.java
URL: http://svn.apache.org/viewvc/incubator/ace/trunk/ace-webui-vaadin/src/main/java/org/apache/ace/webui/vaadin/NamedTargetObject.java?rev=1138494&r1=1138493&r2=1138494&view=diff
==============================================================================
--- incubator/ace/trunk/ace-webui-vaadin/src/main/java/org/apache/ace/webui/vaadin/NamedTargetObject.java (original)
+++ incubator/ace/trunk/ace-webui-vaadin/src/main/java/org/apache/ace/webui/vaadin/NamedTargetObject.java Wed Jun 22 14:55:30 2011
@@ -37,4 +37,8 @@ class NamedTargetObject implements Named
public RepositoryObject getObject() {
return m_target;
}
+
+ public String getDefinition() {
+ return m_target.getDefinition();
+ }
}
\ No newline at end of file
Modified: incubator/ace/trunk/ace-webui-vaadin/src/main/java/org/apache/ace/webui/vaadin/VaadinClient.java
URL: http://svn.apache.org/viewvc/incubator/ace/trunk/ace-webui-vaadin/src/main/java/org/apache/ace/webui/vaadin/VaadinClient.java?rev=1138494&r1=1138493&r2=1138494&view=diff
==============================================================================
--- incubator/ace/trunk/ace-webui-vaadin/src/main/java/org/apache/ace/webui/vaadin/VaadinClient.java (original)
+++ incubator/ace/trunk/ace-webui-vaadin/src/main/java/org/apache/ace/webui/vaadin/VaadinClient.java Wed Jun 22 14:55:30 2011
@@ -618,35 +618,38 @@ public class VaadinClient extends com.va
return;
}
- Item item = addItem(artifact.getName());
- item.getItemProperty(OBJECT_NAME).setValue(artifact.getName());
- item.getItemProperty(OBJECT_DESCRIPTION).setValue(artifact.getDescription());
- HorizontalLayout buttons = new HorizontalLayout();
- Button removeLinkButton = new RemoveLinkButton<ArtifactObject>(artifact, null, m_featuresPanel) {
- @Override
- protected void removeLinkFromLeft(ArtifactObject object, RepositoryObject other) {}
-
- @Override
- protected void removeLinkFromRight(ArtifactObject object, RepositoryObject other) {
- List<Artifact2GroupAssociation> associations = object.getAssociationsWith((GroupObject) other);
- for (Artifact2GroupAssociation association : associations) {
- m_artifact2GroupAssociationRepository.remove(association);
+ Item item = addItem(artifact.getDefinition());
+ if (item != null) {
+ item.getItemProperty(OBJECT_NAME).setValue(artifact.getName());
+ item.getItemProperty(OBJECT_DESCRIPTION).setValue(artifact.getDescription());
+ HorizontalLayout buttons = new HorizontalLayout();
+ Button removeLinkButton = new RemoveLinkButton<ArtifactObject>(artifact, null, m_featuresPanel) {
+ @Override
+ protected void removeLinkFromLeft(ArtifactObject object, RepositoryObject other) {}
+
+ @Override
+ protected void removeLinkFromRight(ArtifactObject object, RepositoryObject other) {
+ List<Artifact2GroupAssociation> associations = object.getAssociationsWith((GroupObject) other);
+ for (Artifact2GroupAssociation association : associations) {
+ m_artifact2GroupAssociationRepository.remove(association);
+ }
+ m_associations.removeAssociatedItem(object);
+ m_table.requestRepaint();
}
- m_associations.removeAssociatedItem(object);
- m_table.requestRepaint();
- }
- };
- buttons.addComponent(removeLinkButton);
- buttons.addComponent(new RemoveItemButton<ArtifactObject, ArtifactRepository>(artifact, m_artifactRepository));
- item.getItemProperty(ACTIONS).setValue(buttons);
-
+ };
+ buttons.addComponent(removeLinkButton);
+ buttons.addComponent(new RemoveItemButton<ArtifactObject, ArtifactRepository>(artifact, m_artifactRepository));
+ item.getItemProperty(ACTIONS).setValue(buttons);
+ }
}
private void change(ArtifactObject artifact) {
- Item item = getItem(artifact.getName());
- item.getItemProperty(OBJECT_DESCRIPTION).setValue(artifact.getDescription());
+ Item item = getItem(artifact.getDefinition());
+ if (item != null) {
+ item.getItemProperty(OBJECT_DESCRIPTION).setValue(artifact.getDescription());
+ }
}
private void remove(ArtifactObject artifact) {
- removeItem(artifact.getName());
+ removeItem(artifact.getDefinition());
}
};
}
@@ -678,41 +681,45 @@ public class VaadinClient extends com.va
}
}
private void add(GroupObject feature) {
- Item item = addItem(feature.getName());
- item.getItemProperty(OBJECT_NAME).setValue(feature.getName());
- item.getItemProperty(OBJECT_DESCRIPTION).setValue(feature.getDescription());
- Button removeLinkButton = new RemoveLinkButton<GroupObject>(feature, m_artifactsPanel, m_distributionsPanel) {
- @Override
- protected void removeLinkFromLeft(GroupObject object, RepositoryObject other) {
- List<Artifact2GroupAssociation> associations = object.getAssociationsWith((ArtifactObject) other);
- for (Artifact2GroupAssociation association : associations) {
- m_artifact2GroupAssociationRepository.remove(association);
+ Item item = addItem(feature.getDefinition());
+ if (item != null) {
+ item.getItemProperty(OBJECT_NAME).setValue(feature.getName());
+ item.getItemProperty(OBJECT_DESCRIPTION).setValue(feature.getDescription());
+ Button removeLinkButton = new RemoveLinkButton<GroupObject>(feature, m_artifactsPanel, m_distributionsPanel) {
+ @Override
+ protected void removeLinkFromLeft(GroupObject object, RepositoryObject other) {
+ List<Artifact2GroupAssociation> associations = object.getAssociationsWith((ArtifactObject) other);
+ for (Artifact2GroupAssociation association : associations) {
+ m_artifact2GroupAssociationRepository.remove(association);
+ }
+ m_associations.removeAssociatedItem(object);
+ m_table.requestRepaint();
}
- m_associations.removeAssociatedItem(object);
- m_table.requestRepaint();
- }
-
- @Override
- protected void removeLinkFromRight(GroupObject object, RepositoryObject other) {
- List<Group2LicenseAssociation> associations = object.getAssociationsWith((LicenseObject) other);
- for (Group2LicenseAssociation association : associations) {
- m_group2LicenseAssociationRepository.remove(association);
+
+ @Override
+ protected void removeLinkFromRight(GroupObject object, RepositoryObject other) {
+ List<Group2LicenseAssociation> associations = object.getAssociationsWith((LicenseObject) other);
+ for (Group2LicenseAssociation association : associations) {
+ m_group2LicenseAssociationRepository.remove(association);
+ }
+ m_associations.removeAssociatedItem(object);
+ m_table.requestRepaint();
}
- m_associations.removeAssociatedItem(object);
- m_table.requestRepaint();
- }
- };
- HorizontalLayout buttons = new HorizontalLayout();
- buttons.addComponent(removeLinkButton);
- buttons.addComponent(new RemoveItemButton<GroupObject, GroupRepository>(feature, m_featureRepository));
- item.getItemProperty(ACTIONS).setValue(buttons);
+ };
+ HorizontalLayout buttons = new HorizontalLayout();
+ buttons.addComponent(removeLinkButton);
+ buttons.addComponent(new RemoveItemButton<GroupObject, GroupRepository>(feature, m_featureRepository));
+ item.getItemProperty(ACTIONS).setValue(buttons);
+ }
}
private void change(GroupObject go) {
- Item item = getItem(go.getName());
- item.getItemProperty(OBJECT_DESCRIPTION).setValue(go.getDescription());
+ Item item = getItem(go.getDefinition());
+ if (item != null) {
+ item.getItemProperty(OBJECT_DESCRIPTION).setValue(go.getDescription());
+ }
}
private void remove(GroupObject go) {
- removeItem(go.getName());
+ removeItem(go.getDefinition());
}
};
}
@@ -788,41 +795,45 @@ public class VaadinClient extends com.va
}
}
private void add(LicenseObject distribution) {
- Item item = addItem(distribution.getName());
- item.getItemProperty(OBJECT_NAME).setValue(distribution.getName());
- item.getItemProperty(OBJECT_DESCRIPTION).setValue(distribution.getDescription());
- Button removeLinkButton = new RemoveLinkButton<LicenseObject>(distribution, m_featuresPanel, m_targetsPanel) {
- @Override
- protected void removeLinkFromLeft(LicenseObject object, RepositoryObject other) {
- List<Group2LicenseAssociation> associations = object.getAssociationsWith((GroupObject) other);
- for (Group2LicenseAssociation association : associations) {
- m_group2LicenseAssociationRepository.remove(association);
+ Item item = addItem(distribution.getDefinition());
+ if (item != null) {
+ item.getItemProperty(OBJECT_NAME).setValue(distribution.getName());
+ item.getItemProperty(OBJECT_DESCRIPTION).setValue(distribution.getDescription());
+ Button removeLinkButton = new RemoveLinkButton<LicenseObject>(distribution, m_featuresPanel, m_targetsPanel) {
+ @Override
+ protected void removeLinkFromLeft(LicenseObject object, RepositoryObject other) {
+ List<Group2LicenseAssociation> associations = object.getAssociationsWith((GroupObject) other);
+ for (Group2LicenseAssociation association : associations) {
+ m_group2LicenseAssociationRepository.remove(association);
+ }
+ m_associations.removeAssociatedItem(object);
+ m_table.requestRepaint();
}
- m_associations.removeAssociatedItem(object);
- m_table.requestRepaint();
- }
-
- @Override
- protected void removeLinkFromRight(LicenseObject object, RepositoryObject other) {
- List<License2GatewayAssociation> associations = object.getAssociationsWith((GatewayObject) other);
- for (License2GatewayAssociation association : associations) {
- m_license2GatewayAssociationRepository.remove(association);
+
+ @Override
+ protected void removeLinkFromRight(LicenseObject object, RepositoryObject other) {
+ List<License2GatewayAssociation> associations = object.getAssociationsWith((GatewayObject) other);
+ for (License2GatewayAssociation association : associations) {
+ m_license2GatewayAssociationRepository.remove(association);
+ }
+ m_associations.removeAssociatedItem(object);
+ m_table.requestRepaint();
}
- m_associations.removeAssociatedItem(object);
- m_table.requestRepaint();
- }
- };
- HorizontalLayout buttons = new HorizontalLayout();
- buttons.addComponent(removeLinkButton);
- buttons.addComponent(new RemoveItemButton<LicenseObject, LicenseRepository>(distribution, m_distributionRepository));
- item.getItemProperty(ACTIONS).setValue(buttons);
+ };
+ HorizontalLayout buttons = new HorizontalLayout();
+ buttons.addComponent(removeLinkButton);
+ buttons.addComponent(new RemoveItemButton<LicenseObject, LicenseRepository>(distribution, m_distributionRepository));
+ item.getItemProperty(ACTIONS).setValue(buttons);
+ }
}
private void change(LicenseObject distribution) {
- Item item = getItem(distribution.getName());
- item.getItemProperty(OBJECT_DESCRIPTION).setValue(distribution.getDescription());
+ Item item = getItem(distribution.getDefinition());
+ if (item != null) {
+ item.getItemProperty(OBJECT_DESCRIPTION).setValue(distribution.getDescription());
+ }
}
private void remove(LicenseObject distribution) {
- removeItem(distribution.getName());
+ removeItem(distribution.getDefinition());
}
};
}
@@ -855,36 +866,40 @@ public class VaadinClient extends com.va
}
}
private void add(StatefulGatewayObject statefulTarget) {
- Item item = addItem(statefulTarget.getID());
- item.getItemProperty(OBJECT_NAME).setValue(statefulTarget.getID());
- item.getItemProperty(OBJECT_DESCRIPTION).setValue("");
- Button removeLinkButton = new RemoveLinkButton<StatefulGatewayObject>(statefulTarget, m_distributionsPanel, null) {
- @Override
- protected void removeLinkFromLeft(StatefulGatewayObject object, RepositoryObject other) {
- List<License2GatewayAssociation> associations = object.getAssociationsWith((LicenseObject) other);
- for (License2GatewayAssociation association : associations) {
- m_license2GatewayAssociationRepository.remove(association);
+ Item item = addItem(statefulTarget.getDefinition());
+ if (item != null) {
+ item.getItemProperty(OBJECT_NAME).setValue(statefulTarget.getID());
+ item.getItemProperty(OBJECT_DESCRIPTION).setValue("");
+ Button removeLinkButton = new RemoveLinkButton<StatefulGatewayObject>(statefulTarget, m_distributionsPanel, null) {
+ @Override
+ protected void removeLinkFromLeft(StatefulGatewayObject object, RepositoryObject other) {
+ List<License2GatewayAssociation> associations = object.getAssociationsWith((LicenseObject) other);
+ for (License2GatewayAssociation association : associations) {
+ m_license2GatewayAssociationRepository.remove(association);
+ }
+ m_associations.removeAssociatedItem(object);
+ m_table.requestRepaint();
}
- m_associations.removeAssociatedItem(object);
- m_table.requestRepaint();
- }
-
- @Override
- protected void removeLinkFromRight(StatefulGatewayObject object, RepositoryObject other) {
- }
- };
- HorizontalLayout buttons = new HorizontalLayout();
- buttons.addComponent(removeLinkButton);
- // next line commented out because removing stateful targets currently is not possible
- //buttons.addComponent(new RemoveItemButton<StatefulGatewayObject, StatefulGatewayRepository>(statefulTarget, m_statefulTargetRepository));
- item.getItemProperty(ACTIONS).setValue(buttons);
+
+ @Override
+ protected void removeLinkFromRight(StatefulGatewayObject object, RepositoryObject other) {
+ }
+ };
+ HorizontalLayout buttons = new HorizontalLayout();
+ buttons.addComponent(removeLinkButton);
+ // next line commented out because removing stateful targets currently is not possible
+ //buttons.addComponent(new RemoveItemButton<StatefulGatewayObject, StatefulGatewayRepository>(statefulTarget, m_statefulTargetRepository));
+ item.getItemProperty(ACTIONS).setValue(buttons);
+ }
}
private void change(StatefulGatewayObject statefulTarget) {
- Item item = getItem(statefulTarget.getID());
- item.getItemProperty(OBJECT_DESCRIPTION).setValue("");
+ Item item = getItem(statefulTarget.getDefinition());
+ if (item != null) {
+ item.getItemProperty(OBJECT_DESCRIPTION).setValue("");
+ }
}
private void remove(StatefulGatewayObject statefulTarget) {
- removeItem(statefulTarget.getID());
+ removeItem(statefulTarget.getDefinition());
}
};
}
@@ -1014,51 +1029,43 @@ public class VaadinClient extends com.va
m_statefulTargetRepository.preregister(attributes, tags);
}
- private ArtifactObject getArtifact(String name) {
- try {
- List<ArtifactObject> list = m_artifactRepository.get(m_context.createFilter("(" + ArtifactObject.KEY_ARTIFACT_NAME + "=" + name + ")"));
- if (list.size() == 1) {
- return list.get(0);
+ private ArtifactObject getArtifact(String definition) {
+ List<ArtifactObject> list = m_artifactRepository.get();
+ for (ArtifactObject ao : list) {
+ if (ao.getDefinition().equals(definition)) {
+ return ao;
}
}
- catch (InvalidSyntaxException e) {
- }
return null;
}
private GroupObject getFeature(String name) {
- try {
- List<GroupObject> list = m_featureRepository.get(m_context.createFilter("(" + GroupObject.KEY_NAME + "=" + name + ")"));
- if (list.size() == 1) {
- return list.get(0);
+ List<GroupObject> list = m_featureRepository.get();
+ for (GroupObject go : list) {
+ if (go.getDefinition().equals(name)) {
+ return go;
}
}
- catch (InvalidSyntaxException e) {
- }
return null;
}
private LicenseObject getDistribution(String name) {
- try {
- List<LicenseObject> list = m_distributionRepository.get(m_context.createFilter("(" + LicenseObject.KEY_NAME + "=" + name + ")"));
- if (list.size() == 1) {
- return list.get(0);
+ List<LicenseObject> list = m_distributionRepository.get();
+ for (LicenseObject lo : list) {
+ if (lo.getDefinition().equals(name)) {
+ return lo;
}
}
- catch (InvalidSyntaxException e) {
- }
return null;
}
private StatefulGatewayObject getTarget(String name) {
- try {
- List<StatefulGatewayObject> list = m_statefulTargetRepository.get(m_context.createFilter("(" + StatefulGatewayObject.KEY_ID + "=" + name + ")"));
- if (list.size() == 1) {
- return list.get(0);
+ List<StatefulGatewayObject> list = m_statefulTargetRepository.get();
+ for (StatefulGatewayObject sgo : list) {
+ if (sgo.getDefinition().equals(name)) {
+ return sgo;
}
}
- catch (InvalidSyntaxException e) {
- }
return null;
}
@@ -1373,7 +1380,7 @@ public class VaadinClient extends com.va
String version = getNamedItemText(attr, "version");
m_obrList.add(new OBREntry(symbolicname, version, uri));
}
-
+
// Create a list of filenames from the ArtifactRepository
List<OBREntry> fromRepository = new ArrayList<OBREntry>();
List<ArtifactObject> artifactObjects = m_artifactRepository.get();
@@ -1398,14 +1405,18 @@ public class VaadinClient extends com.va
String uri = s.getUri();
String symbolicName = s.getSymbolicName();
String version = s.getVersion();
- Item item = table.addItem(uri);
- if (symbolicName == null || symbolicName.length() == 0) {
- item.getItemProperty("symbolic name").setValue(uri);
- }
- else {
- item.getItemProperty("symbolic name").setValue(symbolicName);
+ try {
+ Item item = table.addItem(uri);
+ if (symbolicName == null || symbolicName.length() == 0) {
+ item.getItemProperty("symbolic name").setValue(uri);
+ }
+ else {
+ item.getItemProperty("symbolic name").setValue(symbolicName);
+ }
+ item.getItemProperty("version").setValue(version);
+ } catch (Exception ex) {
+ ex.printStackTrace();
}
- item.getItemProperty("version").setValue(version);
}
}