killbill-memoizeit
Changes
pom.xml 2(+1 -1)
Details
diff --git a/jaxrs/src/main/java/org/killbill/billing/jaxrs/json/PluginInfoJson.java b/jaxrs/src/main/java/org/killbill/billing/jaxrs/json/PluginInfoJson.java
index 5957022..e1bdd1e 100644
--- a/jaxrs/src/main/java/org/killbill/billing/jaxrs/json/PluginInfoJson.java
+++ b/jaxrs/src/main/java/org/killbill/billing/jaxrs/json/PluginInfoJson.java
@@ -40,16 +40,20 @@ public class PluginInfoJson {
private final Set<PluginServiceInfoJson> services;
+ private final Boolean isSelectedForStart;
+
@JsonCreator
public PluginInfoJson(@JsonProperty("bundleSymbolicName") final String bundleSymbolicName,
@JsonProperty("pluginName") final String pluginName,
@JsonProperty("version") final String version,
@JsonProperty("state") final String state,
+ @JsonProperty("isSelectedForStart") final Boolean isSelectedForStart,
@JsonProperty("services") final Set<PluginServiceInfoJson> services) {
this.bundleSymbolicName = bundleSymbolicName;
this.pluginName = pluginName;
this.version = version;
this.state = state;
+ this.isSelectedForStart = isSelectedForStart;
this.services = services;
}
@@ -58,6 +62,7 @@ public class PluginInfoJson {
input.getPluginName(),
input.getVersion(),
input.getPluginState().name(),
+ input.isSelectedForStart(),
ImmutableSet.copyOf(Iterables.transform(input.getServices(), new Function<PluginServiceInfo, PluginServiceInfoJson>() {
@Override
public PluginServiceInfoJson apply(final PluginServiceInfo input) {
@@ -82,6 +87,11 @@ public class PluginInfoJson {
return state;
}
+ @JsonProperty("isSelectedForStart")
+ public Boolean isSelectedForStart() {
+ return isSelectedForStart;
+ }
+
public Set<PluginServiceInfoJson> getServices() {
return services;
}
diff --git a/jaxrs/src/main/java/org/killbill/billing/jaxrs/resources/NodesInfoResource.java b/jaxrs/src/main/java/org/killbill/billing/jaxrs/resources/NodesInfoResource.java
index 0686221..5d92b8d 100644
--- a/jaxrs/src/main/java/org/killbill/billing/jaxrs/resources/NodesInfoResource.java
+++ b/jaxrs/src/main/java/org/killbill/billing/jaxrs/resources/NodesInfoResource.java
@@ -120,6 +120,7 @@ public class NodesInfoResource extends JaxRsResourceBase {
input.getPluginName(),
input.getVersion(),
input.getPluginState().name(),
+ input.isSelectedForStart(),
servicesJson);
}
}));
pom.xml 2(+1 -1)
diff --git a/pom.xml b/pom.xml
index 8d58ac4..71ef422 100644
--- a/pom.xml
+++ b/pom.xml
@@ -21,7 +21,7 @@
<parent>
<artifactId>killbill-oss-parent</artifactId>
<groupId>org.kill-bill.billing</groupId>
- <version>0.72</version>
+ <version>0.74</version>
</parent>
<artifactId>killbill</artifactId>
<version>0.15.11-SNAPSHOT</version>
diff --git a/util/src/main/java/org/killbill/billing/util/nodes/DefaultKillbillNodesApi.java b/util/src/main/java/org/killbill/billing/util/nodes/DefaultKillbillNodesApi.java
index ddb6a38..13bcb98 100644
--- a/util/src/main/java/org/killbill/billing/util/nodes/DefaultKillbillNodesApi.java
+++ b/util/src/main/java/org/killbill/billing/util/nodes/DefaultKillbillNodesApi.java
@@ -111,7 +111,7 @@ public class DefaultKillbillNodesApi implements KillbillNodesApi {
NodeInfoModelJson nodeInfoJson = mapper.deserializeNodeInfo(nodeInfo.getNodeInfo());
final Iterable<PluginInfo> rawPluginInfo = pluginInfoApi.getPluginsInfo();
- final List<PluginInfo> pluginInfo = rawPluginInfo.iterator().hasNext() ? ImmutableList.<PluginInfo>copyOf(rawPluginInfo) : ImmutableList.<PluginInfo>of();
+ final List<PluginInfo> pluginInfos = rawPluginInfo.iterator().hasNext() ? ImmutableList.<PluginInfo>copyOf(rawPluginInfo) : ImmutableList.<PluginInfo>of();
final NodeInfoModelJson updatedNodeInfoJson = new NodeInfoModelJson(CreatorName.get(),
nodeInfoJson.getBootTime(),
@@ -121,7 +121,7 @@ public class DefaultKillbillNodesApi implements KillbillNodesApi {
nodeInfoJson.getPluginApiVersion(),
nodeInfoJson.getCommonVersion(),
nodeInfoJson.getPlatformVersion(),
- ImmutableList.copyOf(Iterables.transform(pluginInfo, new Function<PluginInfo, PluginInfoModelJson>() {
+ ImmutableList.copyOf(Iterables.transform(pluginInfos, new Function<PluginInfo, PluginInfoModelJson>() {
@Override
public PluginInfoModelJson apply(final PluginInfo input) {
return new PluginInfoModelJson(input);
diff --git a/util/src/main/java/org/killbill/billing/util/nodes/DefaultNodeInfo.java b/util/src/main/java/org/killbill/billing/util/nodes/DefaultNodeInfo.java
index 53afd81..941a9b6 100644
--- a/util/src/main/java/org/killbill/billing/util/nodes/DefaultNodeInfo.java
+++ b/util/src/main/java/org/killbill/billing/util/nodes/DefaultNodeInfo.java
@@ -94,8 +94,7 @@ public class DefaultNodeInfo implements NodeInfo {
return Iterables.transform(plugins, new Function<PluginInfoModelJson, PluginInfo>() {
@Override
public PluginInfo apply(final PluginInfoModelJson input) {
-
- return new DefaultPluginInfo(input.getBundleSymbolicName(), input.getPluginName(), input.getVersion(), input.getState(), toPluginServiceInfo(input.getServices()));
+ return new DefaultPluginInfo(input.getBundleSymbolicName(), input.getPluginName(), input.getVersion(), input.getState(), input.isSelectedForStart(), toPluginServiceInfo(input.getServices()));
}
});
}
diff --git a/util/src/main/java/org/killbill/billing/util/nodes/json/PluginInfoModelJson.java b/util/src/main/java/org/killbill/billing/util/nodes/json/PluginInfoModelJson.java
index bd48b20..487c83e 100644
--- a/util/src/main/java/org/killbill/billing/util/nodes/json/PluginInfoModelJson.java
+++ b/util/src/main/java/org/killbill/billing/util/nodes/json/PluginInfoModelJson.java
@@ -41,16 +41,20 @@ public class PluginInfoModelJson {
private final Set<PluginServiceInfoModelJson> services;
+ private final Boolean isSelectedForStart;
+
@JsonCreator
public PluginInfoModelJson(@JsonProperty("bundleSymbolicName") final String bundleSymbolicName,
@JsonProperty("pluginName") final String pluginName,
@JsonProperty("version") final String version,
@JsonProperty("state") final PluginState state,
+ @JsonProperty("isSelectedForStart") final Boolean isSelectedForStart,
@JsonProperty("services") final Set<PluginServiceInfoModelJson> services) {
this.bundleSymbolicName = bundleSymbolicName;
this.pluginName = pluginName;
this.version = version;
this.state = state;
+ this.isSelectedForStart = isSelectedForStart;
this.services = services;
}
@@ -59,6 +63,7 @@ public class PluginInfoModelJson {
input.getPluginName(),
input.getVersion(),
input.getPluginState(),
+ input.isSelectedForStart(),
ImmutableSet.copyOf(Iterables.transform(input.getServices(), new Function<PluginServiceInfo, PluginServiceInfoModelJson>() {
@Override
public PluginServiceInfoModelJson apply(final PluginServiceInfo input) {
@@ -83,6 +88,11 @@ public class PluginInfoModelJson {
return state;
}
+ @JsonProperty("isSelectedForStart")
+ public boolean isSelectedForStart() {
+ return isSelectedForStart;
+ }
+
public Set<PluginServiceInfoModelJson> getServices() {
return services;
}
@@ -104,6 +114,9 @@ public class PluginInfoModelJson {
if (state != null ? !state.equals(that.state) : that.state != null) {
return false;
}
+ if (isSelectedForStart != that.isSelectedForStart) {
+ return false;
+ }
if (pluginName != null ? !pluginName.equals(that.pluginName) : that.pluginName != null) {
return false;
}
diff --git a/util/src/test/java/org/killbill/billing/util/nodes/TestNodeInfoMapper.java b/util/src/test/java/org/killbill/billing/util/nodes/TestNodeInfoMapper.java
index d9e48fb..8d4ab12 100644
--- a/util/src/test/java/org/killbill/billing/util/nodes/TestNodeInfoMapper.java
+++ b/util/src/test/java/org/killbill/billing/util/nodes/TestNodeInfoMapper.java
@@ -48,7 +48,7 @@ public class TestNodeInfoMapper extends UtilTestSuiteNoDB {
services1.add(svc);
final List<PluginInfoModelJson> pluginInfos = new ArrayList<PluginInfoModelJson>();
- final PluginInfoModelJson info1 = new PluginInfoModelJson("sym1", "name1", "vers1", PluginState.STOPPED, services1);
+ final PluginInfoModelJson info1 = new PluginInfoModelJson("sym1", "name1", "vers1", PluginState.STOPPED, true, services1);
pluginInfos.add(info1);
final NodeInfoModelJson input = new NodeInfoModelJson("nodeName", clock.getUTCNow(), clock.getUTCNow(), "1.0", "1.0", "1.0", "1.0", "1.0", pluginInfos);