use of org.obeonetwork.graal.Actor in project InformationSystem by ObeoNetwork.
the class RelatedActorsTests method addTask.
private Task addTask(TasksContainer container, String name, Actor... actors) {
Task task = GraalFactory.eINSTANCE.createTask();
task.setName(name);
container.getTasks().add(task);
for (Actor actor : actors) {
addActor(task, actor);
}
return task;
}
use of org.obeonetwork.graal.Actor in project InformationSystem by ObeoNetwork.
the class TaskTaskPropertiesEditionComponent method updateSemanticModel.
/**
* {@inheritDoc}
* @see org.eclipse.emf.eef.runtime.impl.components.StandardPropertiesEditionComponent#updateSemanticModel(org.eclipse.emf.eef.runtime.api.notify.IPropertiesEditionEvent)
*/
public void updateSemanticModel(final IPropertiesEditionEvent event) {
Task task = (Task) semanticObject;
if (GraalViewsRepository.Task.Properties.description == event.getAffectedEditor()) {
task.setDescription((java.lang.String) EEFConverterUtil.createFromString(EcorePackage.Literals.ESTRING, (String) event.getNewValue()));
}
if (GraalViewsRepository.Task.Properties.subActivities == event.getAffectedEditor()) {
if (event.getKind() == PropertiesEditionEvent.ADD) {
EReferencePropertiesEditionContext context = new EReferencePropertiesEditionContext(editingContext, this, subActivitiesSettings, editingContext.getAdapterFactory());
PropertiesEditingProvider provider = (PropertiesEditingProvider) editingContext.getAdapterFactory().adapt(semanticObject, PropertiesEditingProvider.class);
if (provider != null) {
PropertiesEditingPolicy policy = provider.getPolicy(context);
if (policy instanceof CreateEditingPolicy) {
policy.execute();
}
}
} else if (event.getKind() == PropertiesEditionEvent.EDIT) {
EObjectPropertiesEditionContext context = new EObjectPropertiesEditionContext(editingContext, this, (EObject) event.getNewValue(), editingContext.getAdapterFactory());
PropertiesEditingProvider provider = (PropertiesEditingProvider) editingContext.getAdapterFactory().adapt((EObject) event.getNewValue(), PropertiesEditingProvider.class);
if (provider != null) {
PropertiesEditingPolicy editionPolicy = provider.getPolicy(context);
if (editionPolicy != null) {
editionPolicy.execute();
}
}
} else if (event.getKind() == PropertiesEditionEvent.REMOVE) {
subActivitiesSettings.removeFromReference((EObject) event.getNewValue());
} else if (event.getKind() == PropertiesEditionEvent.MOVE) {
subActivitiesSettings.move(event.getNewIndex(), (Loop) event.getNewValue());
}
}
if (GraalViewsRepository.Task.Properties.actors == event.getAffectedEditor()) {
if (event.getKind() == PropertiesEditionEvent.ADD) {
if (event.getNewValue() instanceof Actor) {
actorsSettings.addToReference((EObject) event.getNewValue());
}
} else if (event.getKind() == PropertiesEditionEvent.REMOVE) {
actorsSettings.removeFromReference((EObject) event.getNewValue());
} else if (event.getKind() == PropertiesEditionEvent.MOVE) {
actorsSettings.move(event.getNewIndex(), (Actor) event.getNewValue());
}
}
if (GraalViewsRepository.Task.Properties.id == event.getAffectedEditor()) {
task.setId((java.lang.String) EEFConverterUtil.createFromString(EcorePackage.Literals.ESTRING, (String) event.getNewValue()));
}
if (GraalViewsRepository.Task.Properties.name == event.getAffectedEditor()) {
task.setName((java.lang.String) EEFConverterUtil.createFromString(EcorePackage.Literals.ESTRING, (String) event.getNewValue()));
}
if (GraalViewsRepository.Task.Properties.uses == event.getAffectedEditor()) {
if (event.getKind() == PropertiesEditionEvent.ADD) {
if (event.getNewValue() instanceof Task) {
usesSettings.addToReference((EObject) event.getNewValue());
}
} else if (event.getKind() == PropertiesEditionEvent.REMOVE) {
usesSettings.removeFromReference((EObject) event.getNewValue());
} else if (event.getKind() == PropertiesEditionEvent.MOVE) {
usesSettings.move(event.getNewIndex(), (Task) event.getNewValue());
}
}
if (GraalViewsRepository.Task.Properties.preconditions == event.getAffectedEditor()) {
task.setPreconditions((java.lang.String) EEFConverterUtil.createFromString(EcorePackage.Literals.ESTRING, (String) event.getNewValue()));
}
if (GraalViewsRepository.Task.Properties.postconditions == event.getAffectedEditor()) {
task.setPostconditions((java.lang.String) EEFConverterUtil.createFromString(EcorePackage.Literals.ESTRING, (String) event.getNewValue()));
}
}
use of org.obeonetwork.graal.Actor in project InformationSystem by ObeoNetwork.
the class ActorUtils method getVisibleActors.
/**
* Returns the visible actors for a tasks group
* @param group
* @return
*/
public Set<Actor> getVisibleActors(TasksGroup group) {
HashMap<Task, Set<Actor>> cache = new HashMap<Task, Set<Actor>>();
Set<Actor> actors = new LinkedHashSet<Actor>();
List<Actor> actorsLeft = getAllActorsInContext(group);
for (AbstractTask abstractTask : group.getTasks()) {
actors.addAll(internalGetVisibleActors(abstractTask, cache, actorsLeft));
}
return actors;
}
use of org.obeonetwork.graal.Actor in project InformationSystem by ObeoNetwork.
the class TaskUtils method rootExpressionForExistingActors.
/**
* Calculate the rootExpression defines in creation tool Existing Actors in
* Task Graph.
*
* @param context
* the context of call
* @param diagram
* the representation
* @return list of existing Actors
*/
public List<Actor> rootExpressionForExistingActors(EObject context, DSemanticDiagram diagram) {
List<Actor> actors = getSystem(context).getActors();
List<Actor> actorsToReturn = new ArrayList<Actor>();
for (Actor actor : actors) {
if (actor.getSuperActor() == null || isVisibleOnDiagram(actor.getSuperActor(), diagram)) {
actorsToReturn.add(actor);
}
}
return actorsToReturn;
}
use of org.obeonetwork.graal.Actor in project InformationSystem by ObeoNetwork.
the class TaskUtils method candidatesExpressionForExistingActors.
/**
* Calculate the candidateExpression defines in creation tool Existing
* Actors in Task Graph.
*
* @param context
* the context of call
* @param diagram
* the representation
* @return list of existing Actors
*/
public List<Actor> candidatesExpressionForExistingActors(EObject context, DSemanticDiagram diagram) {
List<Actor> actors = new ArrayList<Actor>(getSystem(context).getActors());
List<Actor> actorsInDiagam = new ArrayList<Actor>();
List<DDiagramElement> ownedDiagramElements = diagram.getOwnedDiagramElements();
for (DDiagramElement diagramElement : ownedDiagramElements) {
if (diagramElement.getTarget() instanceof Actor) {
actorsInDiagam.add((Actor) diagramElement.getTarget());
}
}
actors.removeAll(actorsInDiagam);
return actors;
}
Aggregations