Skip to content
Snippets Groups Projects
Commit c353ac97 authored by Vincent Aravantinos's avatar Vincent Aravantinos
Browse files

makes the bases work directly with the constraint instance container

refs 2708
parent b24bd27a
No related branches found
No related tags found
No related merge requests found
......@@ -18,13 +18,16 @@ $Id$
package org.fortiss.tooling.kernel.extension.base;
import static org.fortiss.tooling.kernel.utils.ConstraintsUtils.createOutdatedStatus;
import static org.fortiss.tooling.kernel.utils.ConstraintsUtils.getConstrained;
import java.util.ArrayList;
import java.util.List;
import org.eclipse.emf.ecore.EObject;
import org.fortiss.tooling.kernel.extension.IConstraint;
import org.fortiss.tooling.kernel.model.constraints.ConstraintInstance;
import org.fortiss.tooling.kernel.model.constraints.IConstrained;
import org.fortiss.tooling.kernel.model.constraints.IConstraintInstanceContainer;
import org.fortiss.tooling.kernel.model.constraints.IConstraintInstanceStatus;
import org.fortiss.tooling.kernel.service.IConstraintService.IFix;
import org.fortiss.tooling.kernel.utils.ConstraintsUtils;
......@@ -35,13 +38,16 @@ import org.fortiss.tooling.kernel.utils.ConstraintsUtils;
* @author aravantinos
* @author $Author$
* @version $Rev$
* @ConQAT.Rating YELLOW Hash: EDCE2C41E48EE24255614EDE3E5509CD
* @ConQAT.Rating YELLOW Hash: 0438526E055DFA382D657062895A46A4
*/
public class ConstraintBases {
/** Most generic base. */
public abstract static class ConstraintBase implements IConstraint {
/** Returns the constraint instance container in the context of the given object. */
abstract public IConstraintInstanceContainer getConstraintInstanceContainer(EObject obj);
/** {@inheritDoc} */
@Override
public void preprocessBeforeChecksum(IConstrained cstrd) {
......@@ -74,6 +80,11 @@ public class ConstraintBases {
if(ci != null) {
createOutdatedStatus(ci);
}
if(ci != null) {
IConstraintInstanceContainer ciContainer =
getConstraintInstanceContainer(constrained);
ciContainer.getConstraintInstances().add(ci);
}
return ci;
}
......@@ -97,7 +108,7 @@ public class ConstraintBases {
/** {@inheritDoc} */
@Override
public final IConstraintInstanceStatus verify(ConstraintInstance ci) {
IConstrained constrained = ConstraintsUtils.getConstrained(ci);
IConstrained constrained = getConstrained(ci);
return isApplicable(constrained) ? verify(constrained) : null;
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment