use of org.palladiosimulator.pcm.repository.OperationInterface in project Palladio-Editors-Sirius by PalladioSimulator.
the class AddExternalCallAction method execute.
@Override
public void execute(Collection<? extends EObject> selections, Map<String, Object> parameters) {
ExternalCallAction extCall = (ExternalCallAction) parameters.get("instance");
HashMap<OperationInterface, OperationRequiredRole> requiredRolesMap = new HashMap<OperationInterface, OperationRequiredRole>();
OperationSignature os = getOperationSignature(extCall, requiredRolesMap);
if (os != null) {
extCall.setCalledService_ExternalService(os);
extCall.setRole_ExternalService(requiredRolesMap.get(os.getInterface__OperationSignature()));
}
}
use of org.palladiosimulator.pcm.repository.OperationInterface in project Palladio-Editors-Sirius by PalladioSimulator.
the class AddExternalCallAction method getOperationSignature.
private OperationSignature getOperationSignature(ExternalCallAction extCall, HashMap<OperationInterface, OperationRequiredRole> requiredRolesMap) {
Collection<Object> filter = new ArrayList<Object>();
filter.add(Repository.class);
filter.add(OperationInterface.class);
filter.add(OperationSignature.class);
Collection<EReference> additionalChildReferences = new ArrayList<EReference>();
PalladioSelectEObjectDialog dialog = new PalladioSelectEObjectDialog(SHELL, filter, additionalChildReferences, extCall.eResource().getResourceSet());
dialog.setProvidedService(OperationSignature.class);
for (Object o : dialog.getTreeViewer().getExpandedElements()) {
if (// if the current object is not an OperationInterface, skip.
!(o instanceof OperationInterface))
continue;
ResourceDemandingBehaviour rd = extCall.getResourceDemandingBehaviour_AbstractAction();
ServiceEffectSpecification seff = SEFFUtil.getEnclosingSEFF(rd);
BasicComponent parent = seff.getBasicComponent_ServiceEffectSpecification();
// if o is not referenced by any OperationRequiredRole, remove it from the tree viewer
OperationRequiredRole requiredRole = getOperationRequiredRole(parent.getRequiredRoles_InterfaceRequiringEntity(), (OperationInterface) o);
if (requiredRole != null)
requiredRolesMap.put((OperationInterface) o, requiredRole);
else
dialog.getTreeViewer().remove(o);
}
dialog.open();
return (OperationSignature) dialog.getResult();
}
use of org.palladiosimulator.pcm.repository.OperationInterface in project Palladio-Editors-Sirius by PalladioSimulator.
the class AddOperationRequiredRole method execute.
@Override
public void execute(Collection<? extends EObject> selection, Map<String, Object> parameters) {
OperationRequiredRole role = (OperationRequiredRole) parameters.get("instance");
OperationInterface oInterface = getOperationInterface(role);
role.setRequiredInterface__OperationRequiredRole(oInterface);
}
use of org.palladiosimulator.pcm.repository.OperationInterface in project Palladio-Editors-Sirius by PalladioSimulator.
the class AddOperationRequiredRole method getOperationInterface.
private OperationInterface getOperationInterface(OperationRequiredRole role) {
Collection<Object> filter = new ArrayList<Object>();
filter.add(Repository.class);
filter.add(OperationInterface.class);
// Additional Child References
Collection<EReference> additionalChildReferences = new ArrayList<EReference>();
// Creating the dialog
PalladioSelectEObjectDialog dialog = new PalladioSelectEObjectDialog(SHELL, filter, additionalChildReferences, role.eResource().getResourceSet());
// Setting the needed object type
dialog.setProvidedService(OperationInterface.class);
dialog.open();
return (OperationInterface) dialog.getResult();
}
use of org.palladiosimulator.pcm.repository.OperationInterface in project Palladio-Editors-Sirius by PalladioSimulator.
the class OperationInterfaceTableLifecycleManager method setPropertySection.
@Override
protected void setPropertySection(Composite parent) {
editorSection = new OperationsEditorSection(parent);
editorSection.setViewerContentProvider(new AdapterFactoryContentProvider(adapterFactory));
editorSection.setViewerLabelProvider(new AdapterFactoryLabelProvider(new OperationsTabItemProviderAdapterFactory(new PalladioItemProviderAdapterFactory(adapterFactory))));
OperationInterface input = (OperationInterface) controller.getValue();
editorSection.setViewerInput(input);
((OperationsEditorSection) editorSection).getAddButtonListener().setSelectedInterface(input);
}
Aggregations