Jira Legacy | ||||||
---|---|---|---|---|---|---|
|
...
Description | URI | Sample Response Body |
---|---|---|
Get Cm Handle details by name. | GET {ncmpRoot}/ncmp/v1/ch/PNFDemo | { |
Open
...
Question
Currently within CPS we have two separate models for CmHandles these being CmHandle and PersistenceCmHandle. These are both very similar models, the primary difference being that persistenceCmHandle also contains references to the dmiServiceName, the dmiDataServiceName and the dmiModelServiceName as seen below.
Is it necessary to have both these models?
As PersistenceCmHandle has all the necessary fields of CmHandle, can we just modify existing code to use PerisistenceCmHandle and remove CmHandle?
Code Block | ||||
---|---|---|---|---|
| ||||
/** * CmHandle. */ @Validated @Getter @Setter @NoArgsConstructor public class CmHandle { @JsonProperty("cmHandle") private String cmHandleID; @JsonSetter(nulls = Nulls.AS_EMPTY) @JsonProperty("cmHandleProperties") private Map<String, String> dmiProperties = Collections.emptyMap(); @JsonSetter(nulls = Nulls.AS_EMPTY) @JsonProperty("publicCmHandleProperties") private Map<String, String> publicProperties = Collections.emptyMap(); } |
...
Code Block | ||||
---|---|---|---|---|
| ||||
/** * DmiRegistry. */ @Getter @Setter @NoArgsConstructor public class PersistenceCmHandle { private String id; @JsonProperty("dmi-service-name") private String dmiServiceName; @JsonProperty("dmi-data-service-name") private String dmiDataServiceName; @JsonProperty("dmi-model-service-name") private String dmiModelServiceName; @JsonProperty("additional-properties") private List<Property> dmiProperties; @JsonProperty("public-properties") private List<Property> publicProperties; |
Potential Issue
If we decide to only use one model, one potentially backwards incompatible change is the property names, which differ between persistenceCmHandle and the CmHandle class.
Also should this refactoring be done as part of a separate story?