When creating multiple Resources of the same type, ensure that each
Resource has a new Java Object: follow the same pattern as used for
Widget types.
Change-Id: I1e41d3258a3ccdad91448234ae3cf40235d7b210
Issue-ID: AAI-2267
Signed-off-by: mark.j.leonard <mark.j.leonard@gmail.com>
import java.util.Properties;
import org.onap.aai.babel.xml.generator.XmlArtifactGenerationException;
import org.onap.aai.babel.xml.generator.model.Resource;
import java.util.Properties;
import org.onap.aai.babel.xml.generator.XmlArtifactGenerationException;
import org.onap.aai.babel.xml.generator.model.Resource;
-import org.onap.aai.babel.xml.generator.model.WidgetType;
import org.onap.aai.babel.xml.generator.model.Widget;
import org.onap.aai.babel.xml.generator.model.Widget;
+import org.onap.aai.babel.xml.generator.model.WidgetType;
import org.onap.aai.babel.xml.generator.types.ModelType;
public class WidgetConfigurationUtil {
import org.onap.aai.babel.xml.generator.types.ModelType;
public class WidgetConfigurationUtil {
}
public static Optional<Resource> createModelFromType(String typePrefix) {
}
public static Optional<Resource> createModelFromType(String typePrefix) {
- return Optional.ofNullable(typeToResource.get(typePrefix));
+ Optional<Resource> resource = Optional.ofNullable(typeToResource.get(typePrefix));
+ if (resource.isPresent()) {
+ // Make a copy of the Resource found in the mappings table.
+ return Optional.of(new Resource(resource.get()));
+ }
+ return resource;
}
public static Widget createWidgetFromType(String widgetType) throws XmlArtifactGenerationException {
}
public static Widget createWidgetFromType(String widgetType) throws XmlArtifactGenerationException {
this.deleteFlag = deleteFlag;
}
this.deleteFlag = deleteFlag;
}
+ /**
+ * Copy Constructor.
+ *
+ * @param baseResource
+ */
+ public Resource(Resource baseResource) {
+ this(baseResource.getWidgetType(), baseResource.getDeleteFlag());
+ setModelType(baseResource.getModelType());
+ }
+
@Override
public int hashCode() {
final String uuid = getModelNameVersionId();
@Override
public int hashCode() {
final String uuid = getModelNameVersionId();
public WidgetType getWidgetType() {
return type;
}
public WidgetType getWidgetType() {
return type;
}
public String getModelTypeName() {
return "resource";
}
public String getModelTypeName() {
return "resource";
}