Search in sources :

Example 1 with Actor

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;
}
Also used : AbstractTask(org.obeonetwork.graal.AbstractTask) Task(org.obeonetwork.graal.Task) Actor(org.obeonetwork.graal.Actor)

Example 2 with Actor

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()));
    }
}
Also used : Loop(org.obeonetwork.graal.Loop) Task(org.obeonetwork.graal.Task) EObjectPropertiesEditionContext(org.eclipse.emf.eef.runtime.context.impl.EObjectPropertiesEditionContext) PropertiesEditingProvider(org.eclipse.emf.eef.runtime.providers.PropertiesEditingProvider) EObject(org.eclipse.emf.ecore.EObject) Actor(org.obeonetwork.graal.Actor) PropertiesEditingPolicy(org.eclipse.emf.eef.runtime.policies.PropertiesEditingPolicy) CreateEditingPolicy(org.eclipse.emf.eef.runtime.policies.impl.CreateEditingPolicy) EReferencePropertiesEditionContext(org.eclipse.emf.eef.runtime.context.impl.EReferencePropertiesEditionContext)

Example 3 with Actor

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;
}
Also used : LinkedHashSet(java.util.LinkedHashSet) AbstractTask(org.obeonetwork.graal.AbstractTask) Task(org.obeonetwork.graal.Task) Set(java.util.Set) LinkedHashSet(java.util.LinkedHashSet) AbstractTask(org.obeonetwork.graal.AbstractTask) HashMap(java.util.HashMap) Actor(org.obeonetwork.graal.Actor)

Example 4 with Actor

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;
}
Also used : Actor(org.obeonetwork.graal.Actor) ArrayList(java.util.ArrayList)

Example 5 with Actor

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;
}
Also used : Actor(org.obeonetwork.graal.Actor) ArrayList(java.util.ArrayList) DDiagramElement(org.eclipse.sirius.diagram.DDiagramElement)

Aggregations

Actor (org.obeonetwork.graal.Actor)11 Task (org.obeonetwork.graal.Task)7 AbstractTask (org.obeonetwork.graal.AbstractTask)6 LinkedHashSet (java.util.LinkedHashSet)4 Set (java.util.Set)4 HashMap (java.util.HashMap)3 ArrayList (java.util.ArrayList)2 EObject (org.eclipse.emf.ecore.EObject)2 EObjectPropertiesEditionContext (org.eclipse.emf.eef.runtime.context.impl.EObjectPropertiesEditionContext)1 EReferencePropertiesEditionContext (org.eclipse.emf.eef.runtime.context.impl.EReferencePropertiesEditionContext)1 EObjectFilter (org.eclipse.emf.eef.runtime.impl.filters.EObjectFilter)1 PropertiesEditingPolicy (org.eclipse.emf.eef.runtime.policies.PropertiesEditingPolicy)1 CreateEditingPolicy (org.eclipse.emf.eef.runtime.policies.impl.CreateEditingPolicy)1 PropertiesEditingProvider (org.eclipse.emf.eef.runtime.providers.PropertiesEditingProvider)1 EObjectFlatComboSettings (org.eclipse.emf.eef.runtime.ui.widgets.eobjflatcombo.EObjectFlatComboSettings)1 ReferencesTableSettings (org.eclipse.emf.eef.runtime.ui.widgets.referencestable.ReferencesTableSettings)1 Viewer (org.eclipse.jface.viewers.Viewer)1 ViewerFilter (org.eclipse.jface.viewers.ViewerFilter)1 DDiagramElement (org.eclipse.sirius.diagram.DDiagramElement)1 Loop (org.obeonetwork.graal.Loop)1