You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@brooklyn.apache.org by al...@apache.org on 2016/01/14 17:45:17 UTC
[1/3] incubator-brooklyn git commit: Fix catalog XML deserializing
Repository: incubator-brooklyn
Updated Branches:
refs/heads/master e2392c3a0 -> a2fde1af6
Fix catalog XML deserializing
Fixes the serialized XML format so it can be deserialized later.
Project: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/commit/f9591d9f
Tree: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/tree/f9591d9f
Diff: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/diff/f9591d9f
Branch: refs/heads/master
Commit: f9591d9f2da776deb51536dba2e064989dbeda87
Parents: 58337c4
Author: Svetoslav Neykov <sv...@cloudsoftcorp.com>
Authored: Thu Jan 14 17:01:38 2016 +0200
Committer: Svetoslav Neykov <sv...@cloudsoftcorp.com>
Committed: Thu Jan 14 17:01:48 2016 +0200
----------------------------------------------------------------------
.../catalog/internal/CatalogXmlSerializer.java | 3 ++-
.../apache/brooklyn/core/mgmt/BrooklynTags.java | 17 ++++++++++++-----
2 files changed, 14 insertions(+), 6 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/f9591d9f/brooklyn-server/core/src/main/java/org/apache/brooklyn/core/catalog/internal/CatalogXmlSerializer.java
----------------------------------------------------------------------
diff --git a/brooklyn-server/core/src/main/java/org/apache/brooklyn/core/catalog/internal/CatalogXmlSerializer.java b/brooklyn-server/core/src/main/java/org/apache/brooklyn/core/catalog/internal/CatalogXmlSerializer.java
index 855a753..3cf686e 100644
--- a/brooklyn-server/core/src/main/java/org/apache/brooklyn/core/catalog/internal/CatalogXmlSerializer.java
+++ b/brooklyn-server/core/src/main/java/org/apache/brooklyn/core/catalog/internal/CatalogXmlSerializer.java
@@ -36,7 +36,8 @@ public class CatalogXmlSerializer extends XmlSerializer<Object> {
super(DeserializingClassRenamesProvider.loadDeserializingClassRenames());
xstream.addDefaultImplementation(ArrayList.class, Collection.class);
-
+
+ //Doesn't work well for non-standard lists, like Lists.transform results
xstream.aliasType("list", List.class);
xstream.aliasType("map", Map.class);
http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/f9591d9f/brooklyn-server/core/src/main/java/org/apache/brooklyn/core/mgmt/BrooklynTags.java
----------------------------------------------------------------------
diff --git a/brooklyn-server/core/src/main/java/org/apache/brooklyn/core/mgmt/BrooklynTags.java b/brooklyn-server/core/src/main/java/org/apache/brooklyn/core/mgmt/BrooklynTags.java
index e8d7915..a08eb56 100644
--- a/brooklyn-server/core/src/main/java/org/apache/brooklyn/core/mgmt/BrooklynTags.java
+++ b/brooklyn-server/core/src/main/java/org/apache/brooklyn/core/mgmt/BrooklynTags.java
@@ -19,6 +19,7 @@
package org.apache.brooklyn.core.mgmt;
import java.io.Serializable;
+import java.util.ArrayList;
import java.util.List;
import org.codehaus.jackson.annotate.JsonIgnore;
@@ -85,11 +86,17 @@ public class BrooklynTags {
public static class TraitsTag extends ListTag<String> {
public TraitsTag(List<Class<?>> interfaces) {
- super(Lists.transform(interfaces, new Function<Class<?>, String>() {
- @Override public String apply(Class<?> input) {
- return input.getName();
- }
- }));
+ // The transformed list is a view, meaning that it references
+ // the instances list. This means that it will serialize
+ // the list of classes along with the anonymous function which
+ // is not what we want. Force eager evaluation instead, using
+ // a simple list, supported by {@link CatalogXmlSerializer}.
+ super(new ArrayList<String>(
+ Lists.transform(interfaces, new Function<Class<?>, String>() {
+ @Override public String apply(Class<?> input) {
+ return input.getName();
+ }
+ })));
}
@JsonProperty("traits")
[2/3] incubator-brooklyn git commit: Test catalog item tags
serialization
Posted by al...@apache.org.
Test catalog item tags serialization
Project: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/commit/9c64872f
Tree: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/tree/9c64872f
Diff: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/diff/9c64872f
Branch: refs/heads/master
Commit: 9c64872fa2e204c8091cf1d7fefa90403747595c
Parents: f9591d9
Author: Svetoslav Neykov <sv...@cloudsoftcorp.com>
Authored: Thu Jan 14 17:17:25 2016 +0200
Committer: Svetoslav Neykov <sv...@cloudsoftcorp.com>
Committed: Thu Jan 14 17:17:25 2016 +0200
----------------------------------------------------------------------
.../apache/brooklyn/core/catalog/internal/CatalogDtoTest.java | 5 +++++
1 file changed, 5 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/9c64872f/brooklyn-server/core/src/test/java/org/apache/brooklyn/core/catalog/internal/CatalogDtoTest.java
----------------------------------------------------------------------
diff --git a/brooklyn-server/core/src/test/java/org/apache/brooklyn/core/catalog/internal/CatalogDtoTest.java b/brooklyn-server/core/src/test/java/org/apache/brooklyn/core/catalog/internal/CatalogDtoTest.java
index dc3662c..228c922 100644
--- a/brooklyn-server/core/src/test/java/org/apache/brooklyn/core/catalog/internal/CatalogDtoTest.java
+++ b/brooklyn-server/core/src/test/java/org/apache/brooklyn/core/catalog/internal/CatalogDtoTest.java
@@ -39,12 +39,14 @@ import org.apache.brooklyn.core.catalog.internal.CatalogUtils;
import org.apache.brooklyn.core.catalog.internal.CatalogXmlSerializer;
import org.apache.brooklyn.core.catalog.internal.CatalogClasspathDo.CatalogScanningModes;
import org.apache.brooklyn.core.entity.Entities;
+import org.apache.brooklyn.core.mgmt.BrooklynTags;
import org.apache.brooklyn.core.mgmt.internal.LocalManagementContext;
import org.apache.brooklyn.core.test.entity.LocalManagementContextForTests;
import org.apache.brooklyn.core.test.entity.TestApplication;
import org.apache.brooklyn.core.test.entity.TestEntity;
import org.apache.brooklyn.util.core.BrooklynMavenArtifacts;
import org.apache.brooklyn.util.maven.MavenRetriever;
+import org.apache.commons.lang3.ClassUtils;
import com.google.common.collect.ImmutableList;
@@ -111,6 +113,9 @@ public class CatalogDtoTest {
testEntitiesJavaCatalog.addEntry(CatalogItemBuilder.newTemplate(TestApplication.class.getCanonicalName(), BasicBrooklynCatalog.NO_VERSION)
.displayName("Test App from JAR")
.javaType(TestApplication.class.getCanonicalName())
+ .tag(BrooklynTags.newNotesTag("Some notes for catalog testing"))
+ .tag(BrooklynTags.newYamlSpecTag("This is the spec for a test catalog item"))
+ .tag(BrooklynTags.newTraitsTag(ClassUtils.getAllInterfaces(TestApplication.class)))
.build());
testEntitiesJavaCatalog.addEntry(CatalogItemBuilder.newEntity(TestEntity.class.getCanonicalName(), BasicBrooklynCatalog.NO_VERSION)
.displayName("Test Entity from JAR")
[3/3] incubator-brooklyn git commit: This closes #1147
Posted by al...@apache.org.
This closes #1147
Project: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/commit/a2fde1af
Tree: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/tree/a2fde1af
Diff: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/diff/a2fde1af
Branch: refs/heads/master
Commit: a2fde1af6da656e3b81ab31e61e35d445c201f76
Parents: e2392c3 9c64872
Author: Aled Sage <al...@gmail.com>
Authored: Thu Jan 14 16:44:57 2016 +0000
Committer: Aled Sage <al...@gmail.com>
Committed: Thu Jan 14 16:44:57 2016 +0000
----------------------------------------------------------------------
.../catalog/internal/CatalogXmlSerializer.java | 3 ++-
.../apache/brooklyn/core/mgmt/BrooklynTags.java | 17 ++++++++++++-----
.../core/catalog/internal/CatalogDtoTest.java | 5 +++++
3 files changed, 19 insertions(+), 6 deletions(-)
----------------------------------------------------------------------