c4cf9fcdd0124fb0ab3e81e8c7d388a60cb57d2a
[sdc.git] /
1 package org.openecomp.sdc.be.components.path.beans;
2
3 import org.openecomp.sdc.be.impl.ForwardingPathUtils;
4 import org.openecomp.sdc.be.model.Component;
5 import org.openecomp.sdc.be.model.Resource;
6 import org.openecomp.sdc.be.model.jsontitan.operations.ToscaOperationFacade;
7 import org.openecomp.sdc.be.model.operations.api.StorageOperationStatus;
8
9 import fj.data.Either;
10
11 @org.springframework.stereotype.Component("tosca-operation-facade")
12 public class ForwardingPathToscaOperationFacade extends ToscaOperationFacade {
13     protected static final String GENERIC_SERVICE_NAME = "org.openecomp.resource.abstract.nodes.service";
14     @Override
15     public Either<Resource, StorageOperationStatus> getLatestCertifiedNodeTypeByToscaResourceName(String toscaResourceName) {
16
17         return Either.left(setupGenericServiceMock());
18     }
19
20     protected Resource setupGenericServiceMock(){
21         Resource genericService = new Resource();
22         genericService.setVersion("1.0");
23         genericService.setToscaResourceName(GENERIC_SERVICE_NAME);
24         return genericService;
25     }
26
27     @Override
28     public <T extends Component> Either<T, StorageOperationStatus> getLatestByName(String resourceName) {
29         if(resourceName.equals(ForwardingPathUtils.FORWARDING_PATH_NODE_NAME) || resourceName.equals(ForwardingPathUtils.FORWARDER_CAPABILITY)){
30             Resource component = new Resource();
31             component.setToscaResourceName(GENERIC_SERVICE_NAME);
32             return Either.left((T)component);
33         }
34         return super.getLatestByName(resourceName);
35     }
36
37     @Override
38     public <T extends Component> Either<T, StorageOperationStatus> getLatestByToscaResourceName(String toscaResourceName) {
39         if(toscaResourceName.equals(ForwardingPathUtils.FORWARDING_PATH_NODE_NAME) || toscaResourceName.equals(ForwardingPathUtils.FORWARDER_CAPABILITY)){
40             Resource component = new Resource();
41             component.setToscaResourceName(GENERIC_SERVICE_NAME);
42             return Either.left((T)component);
43         }
44         return super.getLatestByToscaResourceName(toscaResourceName);
45     }
46 }