Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@
import com.amdocs.zusammen.adaptor.inbound.api.types.item.ElementInfo;
import com.amdocs.zusammen.datatypes.Id;
import com.amdocs.zusammen.datatypes.SessionContext;
import com.amdocs.zusammen.datatypes.Space;
import com.amdocs.zusammen.datatypes.item.ElementContext;
import com.amdocs.zusammen.datatypes.item.Resolution;
import com.amdocs.zusammen.datatypes.response.Response;
Expand All @@ -37,8 +38,13 @@ Response<Collection<ElementInfo>> list(SessionContext context, ElementContext el
Response<ElementInfo> getInfo(SessionContext context, ElementContext elementContext,
Id elementId);

Response<ElementInfo> getInfo(SessionContext context, Space space, ElementContext elementContext,
Id elementId);

Response<Element> get(SessionContext context, ElementContext elementContext, Id elementId);

Response<Element> get(SessionContext context, Space space, ElementContext elementContext, Id elementId);

Response<ElementConflict> getConflict(SessionContext context, ElementContext elementContext,
Id elementId);

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,7 @@
import com.amdocs.zusammen.core.api.item.ElementManagerFactory;
import com.amdocs.zusammen.datatypes.Id;
import com.amdocs.zusammen.datatypes.SessionContext;
import com.amdocs.zusammen.datatypes.Space;
import com.amdocs.zusammen.datatypes.item.ElementContext;
import com.amdocs.zusammen.datatypes.item.Resolution;
import com.amdocs.zusammen.datatypes.response.ErrorCode;
Expand Down Expand Up @@ -70,10 +71,15 @@ public Response<Collection<ElementInfo>> list(SessionContext context, ElementCon
@Override
public Response<ElementInfo> getInfo(SessionContext context, ElementContext elementContext, Id
elementId) {
return getInfo(context, Space.PRIVATE, elementContext, elementId);
}

@Override
public Response<ElementInfo> getInfo(SessionContext context, Space space, ElementContext elementContext, Id elementId) {
Response<ElementInfo> response;
try {
ElementInfo elementInfo = ElementInfoConvertor
.convert(getElementManager(context).getInfo(context, elementContext, elementId));
.convert(getElementManager(context).getInfo(context, space,elementContext, elementId));
response = new Response<>(elementInfo);
} catch (ZusammenException ze) {
ReturnCode returnCode =
Expand All @@ -87,10 +93,15 @@ public Response<ElementInfo> getInfo(SessionContext context, ElementContext elem
@Override
public Response<Element> get(SessionContext context, ElementContext elementContext, Id
elementId) {
return get(context, Space.PRIVATE, elementContext, elementId);
}

@Override
public Response<Element> get(SessionContext context, Space space, ElementContext elementContext, Id elementId) {
Response<Element> response;
try {
Element element = ElementConvertor
.convert(getElementManager(context).get(context, elementContext, elementId));
.convert(getElementManager(context).get(context, space, elementContext, elementId));
response = new Response<>(element);
} catch (ZusammenException ze) {
ReturnCode returnCode =
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -95,6 +95,9 @@ Response<Collection<CoreElement>> listElements(SessionContext context,
Response<CoreElement> getElement(SessionContext context, ElementContext elementContext,
Namespace namespace, Id elementId);

Response<CoreElement> getElement(SessionContext context, Space space, ElementContext elementContext,
Namespace namespace, Id elementId);

Response<CoreElementConflict> getElementConflict(SessionContext context,
ElementContext elementContext,
Namespace namespace, Id elementId);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,9 @@ Response<Collection<CoreElementInfo>> list(SessionContext context, ElementContex
Response<CoreElementInfo> get(SessionContext context, ElementContext elementContext,
Id elementId);

Response<CoreElementInfo> get(SessionContext context, Space space, ElementContext elementContext,
Id elementId);

Response<Void> create(SessionContext context, ElementContext elementContext, Space space,
CoreElement element);

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -560,11 +560,15 @@ public Response<Collection<CoreElement>> listElements(SessionContext context,
@Override
public Response<CoreElement> getElement(SessionContext context, ElementContext elementContext,
Namespace namespace, Id elementId) {
return getElement(context, Space.PRIVATE, elementContext, namespace, elementId);
}

@Override
public Response<CoreElement> getElement(SessionContext context, Space space, ElementContext elementContext, Namespace namespace, Id elementId) {
Response<CollaborationElement> collaborationResponse;
try {
collaborationResponse =
getCollaborationStore(context).getElement(context, elementContext, namespace, elementId);
getCollaborationStore(context).getElement(context, space, elementContext, namespace, elementId);
} catch (RuntimeException re) {
ReturnCode returnCode =
new ReturnCode(ErrorCode.MD_ELEMENT_GET, Module.ZCSM, null,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -111,11 +111,16 @@ public Response<Namespace> getNamespace(SessionContext context, Id itemId, Id el
@Override
public Response<CoreElementInfo> get(SessionContext context, ElementContext elementContext,
Id elementId) {
return get(context, Space.PRIVATE, elementContext, elementId);
}

@Override
public Response<CoreElementInfo> get(SessionContext context, Space space, ElementContext elementContext, Id elementId) {
Response<StateElement> pluginResponse;
Response<CoreElementInfo> response;
try {
pluginResponse = OutboundAdaptorUtils.getStateStore(context)
.getElement(context, elementContext, elementId);
.getElement(context, space, elementContext, elementId);
if (pluginResponse.isSuccessful()) {
response = new Response<>(StateElementConvertor.convertToCoreElementInfo
(pluginResponse.getValue()));
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -37,8 +37,12 @@ Collection<CoreElementInfo> list(SessionContext context, ElementContext elementC

CoreElementInfo getInfo(SessionContext context, ElementContext elementContext, Id elementId);

CoreElementInfo getInfo(SessionContext context, Space space, ElementContext elementContext, Id elementId);

CoreElement get(SessionContext context, ElementContext elementContext, Id elementId);

CoreElement get(SessionContext context, Space space, ElementContext elementContext, Id elementId);

CoreElement save(SessionContext context, ElementContext elementContext, CoreElement element,
String message);

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -100,12 +100,17 @@ public Collection<CoreElementInfo> list(SessionContext context, ElementContext e
@Override
public CoreElementInfo getInfo(SessionContext context, ElementContext elementContext,
Id elementId) {
validateItemVersionExistence(context, Space.PRIVATE, elementContext.getItemId(),
elementContext.getVersionId());
return getInfo(context, Space.PRIVATE, elementContext, elementId);
}

@Override
public CoreElementInfo getInfo(SessionContext context, Space space, ElementContext elementContext, Id elementId) {
validateItemVersionExistence(context, space, elementContext.getItemId(),
elementContext.getVersionId());

if (elementContext.getRevisionId() == null) {
Response<CoreElementInfo> infoResponse =
getStateAdaptor(context).get(context, elementContext, elementId);
getStateAdaptor(context).get(context, space, elementContext, elementId);
ValidationUtil.validateResponse(infoResponse, logger, ErrorCode.ZU_ELEMENT_GET_INFO);
return infoResponse.getValue();
} else {
Expand All @@ -115,15 +120,20 @@ public CoreElementInfo getInfo(SessionContext context, ElementContext elementCon
return null;
}
Response<CoreElement> elementResponse =
getCollaborationAdaptor(context)
.getElement(context, elementContext, namespace, elementId);
getCollaborationAdaptor(context)
.getElement(context, space, elementContext, namespace, elementId);
ValidationUtil.validateResponse(elementResponse, logger, ErrorCode.ZU_ELEMENT_GET_INFO);
return coreElementToCoreElementInfo(elementResponse.getValue());
}
}

@Override
public CoreElement get(SessionContext context, ElementContext elementContext,
public CoreElement get(SessionContext context, ElementContext elementContext, Id elementId) {
return get(context, Space.PRIVATE, elementContext, elementId);
}

@Override
public CoreElement get(SessionContext context, Space space, ElementContext elementContext,
Id elementId) {
Namespace namespace =
getValidatedNamespace(context, elementContext, elementId, ErrorCode.ZU_ELEMENT_GET);
Expand All @@ -132,7 +142,7 @@ public CoreElement get(SessionContext context, ElementContext elementContext,
}

Response<CoreElement> response =
getCollaborationAdaptor(context).getElement(context, elementContext, namespace, elementId);
getCollaborationAdaptor(context).getElement(context,space, elementContext, namespace, elementId);
ValidationUtil.validateResponse(response, logger, ErrorCode.ZU_ELEMENT_GET);
return response.getValue();
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -183,7 +183,7 @@ public void testGetInfo() throws Exception {
createCoreElementInfo(elementId, new Id(), Namespace.ROOT_NAMESPACE);
Response<CoreElementInfo> coreElementInfoResponse = new Response<>(retrievedElementInfo);
doReturn(coreElementInfoResponse).when(stateAdaptorMock)
.get(context, elementContext, elementId);
.get(context, Space.PRIVATE, elementContext, elementId);

CoreElementInfo elementInfo = elementManager.getInfo(context, elementContext, elementId);

Expand Down Expand Up @@ -213,7 +213,7 @@ public void testGetInfoByChangeRef() throws Exception {

Response<CoreElement> CoreElementRes = new Response<>(retrievedCoreElement);
doReturn(CoreElementRes).when(collaborationAdaptorMock)
.getElement(context, elementContext, namespace, elementId);
.getElement(context, Space.PRIVATE, elementContext, namespace, elementId);

CoreElementInfo elementInfo = elementManager.getInfo(context, elementContext, elementId);

Expand Down Expand Up @@ -250,7 +250,7 @@ public void testGet() throws Exception {
CoreElement retrievedCoreElement = new CoreElement();
Response<CoreElement> CoreElementRes = new Response<>(retrievedCoreElement);
doReturn(CoreElementRes).when(collaborationAdaptorMock)
.getElement(context, elementContext, namespace, elementId);
.getElement(context, Space.PRIVATE, elementContext, namespace, elementId);

CoreElement element = elementManager.get(context, elementContext, elementId);

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -97,6 +97,9 @@ Response<Collection<CollaborationElement>> listElements(SessionContext context,
Response<CollaborationElement> getElement(SessionContext context, ElementContext elementContext,
Namespace namespace, Id elementId);

Response<CollaborationElement> getElement(SessionContext context, Space space, ElementContext elementContext,
Namespace namespace, Id elementId);

Response<CollaborationElementConflict> getElementConflict(SessionContext context,
ElementContext elementContext,
Namespace namespace, Id elementId);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -76,6 +76,9 @@ Response<Boolean> isElementExist(SessionContext context, ElementContext elementC
Response<StateElement> getElement(SessionContext context, ElementContext elementContext,
Id elementId);

Response<StateElement> getElement(SessionContext context, Space space, ElementContext elementContext,
Id elementId);

Response<Void> createElement(SessionContext context, StateElement element);

Response<Void> updateElement(SessionContext context, StateElement element);
Expand Down
98 changes: 98 additions & 0 deletions samples/src/main/java/com/amdocs/zusammen/element/GetElement.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,98 @@
package com.amdocs.zusammen.element;

import com.amdocs.zusammen.adaptor.inbound.api.types.item.ZusammenElement;
import com.amdocs.zusammen.datatypes.Id;
import com.amdocs.zusammen.datatypes.Space;
import com.amdocs.zusammen.datatypes.item.Action;
import com.amdocs.zusammen.datatypes.item.ElementContext;
import com.amdocs.zusammen.datatypes.itemversion.ItemVersionRevisions;
import com.amdocs.zusammen.datatypes.itemversion.Revision;
import com.amdocs.zusammen.datatypes.response.Response;
import com.amdocs.zusammen.itemversion.GetItemVersion;

import static com.amdocs.zusammen.Zusammen.*;

public class GetElement extends Element {

public static void main(String[] args) {
//getElementWithoutRevisionId();
getElementWithRevisionId();

System.exit(0);
}

private static void getElementWithoutRevisionId() {
Id itemId = initItem(contextA);
Id versionId = initVersion(contextA, itemId, null);
ElementContext elementContext = new ElementContext(itemId, versionId, null);
Id elementId = initElement(contextA, itemId, versionId);

GetElement getElement = new GetElement();

Response<com.amdocs.zusammen.adaptor.inbound.api.types.item.Element> element = getElement.getElementAdaptor(contextA).get(contextA,Space.PRIVATE, elementContext, elementId);
System.out.println("name PRIVATE= " + element.getValue().getInfo().getName());

GetItemVersion getItemVersion = new GetItemVersion();
getItemVersion.getItemVersionAdaptor(contextA).publish(contextA, itemId, versionId, "first push");

ZusammenElement zusammenElement = (ZusammenElement) element.getValue();
zusammenElement.getInfo().setName("changeName");
zusammenElement.setAction(Action.UPDATE);

getElement.getElementAdaptor(contextA).save(contextA, elementContext, zusammenElement, "change name");

Response<com.amdocs.zusammen.datatypes.item.ItemVersion> itemVersion = getItemVersion.getItemVersionAdaptor(contextA).get(contextA, Space.PUBLIC, itemId, versionId);
getItemVersion.getItemVersionAdaptor(contextA).update(contextA, itemId, versionId, itemVersion.getValue().getData());

element = getElement.getElementAdaptor(contextA).get(contextA,Space.PUBLIC, elementContext, elementId);
System.out.println("name PUBLIC= " + element.getValue().getInfo().getName());

element = getElement.getElementAdaptor(contextA).get(contextA,Space.PRIVATE, elementContext, elementId);
System.out.println("name PRIVATE= " + element.getValue().getInfo().getName());
}

private static void getElementWithRevisionId() {
Id itemId = initItem(contextA);
Id versionId = initVersion(contextA, itemId, null);
ElementContext elementContext = new ElementContext(itemId, versionId, null);
Id elementId = initElement(contextA, itemId, versionId);

GetElement getElement = new GetElement();

Response<com.amdocs.zusammen.adaptor.inbound.api.types.item.Element> element = getElement.getElementAdaptor(contextA).get(contextA,Space.PRIVATE, elementContext, elementId);
System.out.println("name PRIVATE= " + element.getValue().getInfo().getName());


ZusammenElement zusammenElement = (ZusammenElement) element.getValue();
zusammenElement.getInfo().setName("changeName1");
zusammenElement.setAction(Action.UPDATE);

getElement.getElementAdaptor(contextA).save(contextA, elementContext, zusammenElement, "change name");

GetItemVersion getItemVersion = new GetItemVersion();
getItemVersion.getItemVersionAdaptor(contextA).publish(contextA, itemId, versionId, "first push");

zusammenElement.getInfo().setName("changeName2");
zusammenElement.setAction(Action.UPDATE);

getElement.getElementAdaptor(contextA).save(contextA, elementContext, zusammenElement, "change name");

getItemVersion = new GetItemVersion();
getItemVersion.getItemVersionAdaptor(contextA).publish(contextA, itemId, versionId, "second push");

Response<com.amdocs.zusammen.datatypes.item.ItemVersion> itemVersion = getItemVersion.getItemVersionAdaptor(contextA).get(contextA, Space.PUBLIC, itemId, versionId);
getItemVersion.getItemVersionAdaptor(contextA).update(contextA, itemId, versionId, itemVersion.getValue().getData());

Response<ItemVersionRevisions> revisionList = getItemVersion.getItemVersionAdaptor(contextA).listRevisions(contextA, itemId, versionId);
Revision revision = revisionList.getValue().getItemVersionRevisions().get(1); //first push

elementContext.setRevisionId(revision.getRevisionId());

element = getElement.getElementAdaptor(contextA).get(contextA,Space.PUBLIC, elementContext, elementId);
System.out.println("name PUBLIC= " + element.getValue().getInfo().getName());

element = getElement.getElementAdaptor(contextA).get(contextA,Space.PRIVATE, elementContext, elementId);
System.out.println("name PRIVATE= " + element.getValue().getInfo().getName());
}

}
Loading