use of com.google.container.v1.Operation in project idempiere by idempiere.
the class CompositeServiceImpl method performOperations.
/**
* Perform operation
* @param trx
* @param ops
* @param modelADService
* @param compResp
* @param respAggregator
* @param reqlogin
* @return isError
*/
private boolean performOperations(Trx trx, Operation[] ops, ModelADServiceImpl modelADService, CompositeResponse compResp, ArrayList<StandardResponse> respAggregator, ADLoginRequest reqlogin) {
for (Operation operation : ops) {
if (operation.getPreCommit()) {
if (!commitTrx(trx, compResp, respAggregator, "Cannot commit before Operation", true)) {
return false;
}
}
modelADService.setManageTrx(false);
TargetPort.Enum portEnum = operation.getTargetPort();
StandardResponseDocument respDoc = null;
if (portEnum == TargetPort.CREATE_DATA) {
ModelCRUDRequestDocument wrapperDoc = getWrappedCRUD(operation, reqlogin);
if (wrapperDoc == null) {
rollbackAndSetError(trx, compResp, respAggregator, "Operation createData must required ModelCRUD");
return false;
} else {
respDoc = modelADService.createData(wrapperDoc);
}
} else if (portEnum == TargetPort.DELETE_DATA) {
ModelCRUDRequestDocument wrapperDoc = getWrappedCRUD(operation, reqlogin);
if (wrapperDoc == null) {
rollbackAndSetError(trx, compResp, respAggregator, "Operation deleteData must required ModelCRUD");
return false;
} else {
respDoc = modelADService.deleteData(wrapperDoc);
}
} else if (portEnum == TargetPort.CREATE_UPDATE_DATA) {
ModelCRUDRequestDocument wrapperDoc = getWrappedCRUD(operation, reqlogin);
if (wrapperDoc == null) {
rollbackAndSetError(trx, compResp, respAggregator, "Operation createUpdateData must required ModelCRUD");
return false;
} else {
respDoc = modelADService.createUpdateData(wrapperDoc);
}
} else if (portEnum == TargetPort.READ_DATA) {
ModelCRUDRequestDocument wrapperDoc = getWrappedCRUD(operation, reqlogin);
if (wrapperDoc == null) {
// Do not rollback, Continue with consecutive operations
respDoc = StandardResponseDocument.Factory.newInstance();
StandardResponse resp = respDoc.addNewStandardResponse();
resp.setIsError(false);
resp.setError("Operation readData must required ModelCRUD");
} else {
WindowTabDataDocument dataResponse = modelADService.readData(wrapperDoc);
if (dataResponse != null) {
respDoc = StandardResponseDocument.Factory.newInstance();
StandardResponse resp = respDoc.addNewStandardResponse();
// Do not fail though read is failed
resp.setIsError(false);
resp.setWindowTabData(dataResponse.getWindowTabData());
}
}
} else if (portEnum == TargetPort.RUN_PROCESS) {
if (operation.getModelRunProcess() == null) {
rollbackAndSetError(trx, compResp, respAggregator, "Operation runProcess must required ModelRunProcess");
return false;
}
ModelRunProcessRequestDocument wrapperDoc = ModelRunProcessRequestDocument.Factory.newInstance();
ModelRunProcessRequest runProcessReq = wrapperDoc.addNewModelRunProcessRequest();
runProcessReq.setADLoginRequest(reqlogin);
runProcessReq.setModelRunProcess(operation.getModelRunProcess());
RunProcessResponseDocument runResponse = modelADService.runProcess(wrapperDoc);
if (runResponse != null) {
respDoc = StandardResponseDocument.Factory.newInstance();
StandardResponse resp = respDoc.addNewStandardResponse();
resp.setIsError(runResponse.getRunProcessResponse().getIsError());
resp.setRunProcessResponse(runResponse.getRunProcessResponse());
}
} else if (portEnum == TargetPort.SET_DOC_ACTION) {
if (operation.getModelSetDocAction() == null) {
rollbackAndSetError(trx, compResp, respAggregator, "Operation updateData must required ModelSetDocAction");
return false;
}
ModelSetDocActionRequestDocument wrapperDoc = ModelSetDocActionRequestDocument.Factory.newInstance();
ModelSetDocActionRequest actionReq = wrapperDoc.addNewModelSetDocActionRequest();
actionReq.setADLoginRequest(reqlogin);
actionReq.setModelSetDocAction(operation.getModelSetDocAction());
respDoc = modelADService.setDocAction(wrapperDoc);
} else if (portEnum == TargetPort.UPDATE_DATA) {
ModelCRUDRequestDocument wrapperDoc = getWrappedCRUD(operation, reqlogin);
if (wrapperDoc == null) {
rollbackAndSetError(trx, compResp, respAggregator, "Operation updateData must required ModelCRUD");
return false;
} else {
respDoc = modelADService.updateData(wrapperDoc);
}
}
if (respDoc != null)
respAggregator.add(respDoc.getStandardResponse());
if (respDoc != null && respDoc.getStandardResponse().getIsError()) {
rollbackAndSetError(trx, compResp, respAggregator, null);
return false;
}
if (operation.getPostCommit()) {
if (!commitTrx(trx, compResp, respAggregator, "Cannot commit after operation", false)) {
return false;
}
}
}
return true;
}
use of com.google.container.v1.Operation in project java-container by googleapis.
the class ClusterManagerClientTest method setAddonsConfigTest2.
@Test
public void setAddonsConfigTest2() throws Exception {
Operation expectedResponse = Operation.newBuilder().setName("name3373707").setZone("zone3744684").setDetail("detail-1335224239").setStatusMessage("statusMessage-958704715").setSelfLink("selfLink1191800166").setTargetLink("targetLink486368555").setLocation("location1901043637").setStartTime("startTime-2129294769").setEndTime("endTime-1607243192").setProgress(OperationProgress.newBuilder().build()).addAllClusterConditions(new ArrayList<StatusCondition>()).addAllNodepoolConditions(new ArrayList<StatusCondition>()).setError(Status.newBuilder().build()).build();
mockClusterManager.addResponse(expectedResponse);
String projectId = "projectId-894832108";
String zone = "zone3744684";
String clusterId = "clusterId561939637";
AddonsConfig addonsConfig = AddonsConfig.newBuilder().build();
Operation actualResponse = client.setAddonsConfig(projectId, zone, clusterId, addonsConfig);
Assert.assertEquals(expectedResponse, actualResponse);
List<AbstractMessage> actualRequests = mockClusterManager.getRequests();
Assert.assertEquals(1, actualRequests.size());
SetAddonsConfigRequest actualRequest = ((SetAddonsConfigRequest) actualRequests.get(0));
Assert.assertEquals(projectId, actualRequest.getProjectId());
Assert.assertEquals(zone, actualRequest.getZone());
Assert.assertEquals(clusterId, actualRequest.getClusterId());
Assert.assertEquals(addonsConfig, actualRequest.getAddonsConfig());
Assert.assertTrue(channelProvider.isHeaderSent(ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), GaxGrpcProperties.getDefaultApiClientHeaderPattern()));
}
use of com.google.container.v1.Operation in project java-container by googleapis.
the class ClusterManagerClientTest method setLegacyAbacTest.
@Test
public void setLegacyAbacTest() throws Exception {
Operation expectedResponse = Operation.newBuilder().setName("name3373707").setZone("zone3744684").setDetail("detail-1335224239").setStatusMessage("statusMessage-958704715").setSelfLink("selfLink1191800166").setTargetLink("targetLink486368555").setLocation("location1901043637").setStartTime("startTime-2129294769").setEndTime("endTime-1607243192").setProgress(OperationProgress.newBuilder().build()).addAllClusterConditions(new ArrayList<StatusCondition>()).addAllNodepoolConditions(new ArrayList<StatusCondition>()).setError(Status.newBuilder().build()).build();
mockClusterManager.addResponse(expectedResponse);
String name = "name3373707";
boolean enabled = true;
Operation actualResponse = client.setLegacyAbac(name, enabled);
Assert.assertEquals(expectedResponse, actualResponse);
List<AbstractMessage> actualRequests = mockClusterManager.getRequests();
Assert.assertEquals(1, actualRequests.size());
SetLegacyAbacRequest actualRequest = ((SetLegacyAbacRequest) actualRequests.get(0));
Assert.assertEquals(name, actualRequest.getName());
Assert.assertEquals(enabled, actualRequest.getEnabled());
Assert.assertTrue(channelProvider.isHeaderSent(ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), GaxGrpcProperties.getDefaultApiClientHeaderPattern()));
}
use of com.google.container.v1.Operation in project java-container by googleapis.
the class ClusterManagerClientTest method setLocationsTest2.
@Test
public void setLocationsTest2() throws Exception {
Operation expectedResponse = Operation.newBuilder().setName("name3373707").setZone("zone3744684").setDetail("detail-1335224239").setStatusMessage("statusMessage-958704715").setSelfLink("selfLink1191800166").setTargetLink("targetLink486368555").setLocation("location1901043637").setStartTime("startTime-2129294769").setEndTime("endTime-1607243192").setProgress(OperationProgress.newBuilder().build()).addAllClusterConditions(new ArrayList<StatusCondition>()).addAllNodepoolConditions(new ArrayList<StatusCondition>()).setError(Status.newBuilder().build()).build();
mockClusterManager.addResponse(expectedResponse);
String projectId = "projectId-894832108";
String zone = "zone3744684";
String clusterId = "clusterId561939637";
List<String> locations = new ArrayList<>();
Operation actualResponse = client.setLocations(projectId, zone, clusterId, locations);
Assert.assertEquals(expectedResponse, actualResponse);
List<AbstractMessage> actualRequests = mockClusterManager.getRequests();
Assert.assertEquals(1, actualRequests.size());
SetLocationsRequest actualRequest = ((SetLocationsRequest) actualRequests.get(0));
Assert.assertEquals(projectId, actualRequest.getProjectId());
Assert.assertEquals(zone, actualRequest.getZone());
Assert.assertEquals(clusterId, actualRequest.getClusterId());
Assert.assertEquals(locations, actualRequest.getLocationsList());
Assert.assertTrue(channelProvider.isHeaderSent(ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), GaxGrpcProperties.getDefaultApiClientHeaderPattern()));
}
use of com.google.container.v1.Operation in project java-container by googleapis.
the class ClusterManagerClientTest method listOperationsTest.
@Test
public void listOperationsTest() throws Exception {
ListOperationsResponse expectedResponse = ListOperationsResponse.newBuilder().addAllOperations(new ArrayList<Operation>()).addAllMissingZones(new ArrayList<String>()).build();
mockClusterManager.addResponse(expectedResponse);
String projectId = "projectId-894832108";
String zone = "zone3744684";
ListOperationsResponse actualResponse = client.listOperations(projectId, zone);
Assert.assertEquals(expectedResponse, actualResponse);
List<AbstractMessage> actualRequests = mockClusterManager.getRequests();
Assert.assertEquals(1, actualRequests.size());
ListOperationsRequest actualRequest = ((ListOperationsRequest) actualRequests.get(0));
Assert.assertEquals(projectId, actualRequest.getProjectId());
Assert.assertEquals(zone, actualRequest.getZone());
Assert.assertTrue(channelProvider.isHeaderSent(ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), GaxGrpcProperties.getDefaultApiClientHeaderPattern()));
}
Aggregations