diff --git a/org.fortiss.tooling.kernel/trunk/schema/constraintVerifier.exsd b/org.fortiss.tooling.kernel/trunk/schema/constraintVerifier.exsd index b927dcd921c7b9d9571b0f5af0396a40eb83a5ac..2d10f8ae5f0a71fc6ac2c3dae89ff8669cd0b127 100644 --- a/org.fortiss.tooling.kernel/trunk/schema/constraintVerifier.exsd +++ b/org.fortiss.tooling.kernel/trunk/schema/constraintVerifier.exsd @@ -1,12 +1,12 @@ <?xml version='1.0' encoding='UTF-8'?> <!-- Schema file written by PDE --> -<schema targetNamespace="org.fortiss.af3.verification" xmlns="http://www.w3.org/2001/XMLSchema"> +<schema targetNamespace="org.fortiss.tooling.kernel" xmlns="http://www.w3.org/2001/XMLSchema"> <annotation> <appinfo> <meta.schema plugin="org.fortiss.tooling.kernel" id="constraintVerifier" name="Constraint Verifier"/> </appinfo> <documentation> - [Enter description of this extension point.] + DEPRECATED use IConstraintVerificationService.registerConstraintVerifier() instead. </documentation> </annotation> diff --git a/org.fortiss.tooling.kernel/trunk/schema/eclipseResourcePostLoadProvider.exsd b/org.fortiss.tooling.kernel/trunk/schema/eclipseResourcePostLoadProvider.exsd index 387cb579a2907909f2445c13233635d6fb924c87..1a0bc0fd3c00e4d6d1e34db3039b4b644cbc621a 100644 --- a/org.fortiss.tooling.kernel/trunk/schema/eclipseResourcePostLoadProvider.exsd +++ b/org.fortiss.tooling.kernel/trunk/schema/eclipseResourcePostLoadProvider.exsd @@ -6,7 +6,7 @@ <meta.schema plugin="org.fortiss.tooling.kernel" id="eclipseResourcePostLoadProvider" name="Eclipse Resource Post Load Provider"/> </appinfo> <documentation> - Registers a location provider for Eclipse resource based storage. + DEPRECATED use IPersistencyService instead. </documentation> </annotation> diff --git a/org.fortiss.tooling.kernel/trunk/schema/eclipseResourceStorageLocationProvider.exsd b/org.fortiss.tooling.kernel/trunk/schema/eclipseResourceStorageLocationProvider.exsd index 0eb2cb9fb6c12213bab38797493c42b9df884b9d..ef3faf5667471191b3283549c5ec8aae28763244 100644 --- a/org.fortiss.tooling.kernel/trunk/schema/eclipseResourceStorageLocationProvider.exsd +++ b/org.fortiss.tooling.kernel/trunk/schema/eclipseResourceStorageLocationProvider.exsd @@ -6,7 +6,7 @@ <meta.schema plugin="org.fortiss.tooling.kernel" id="eclipseResourceStorageLocationProvider" name="Eclipse Resource Storage Location Provider"/> </appinfo> <documentation> - Registers a location provider for Eclipse resource based storage. + DEPRECATED use IPersistencyService instead. </documentation> </annotation> diff --git a/org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/extension/IEclipseResourcePostLoadProvider.java b/org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/extension/IEclipseResourcePostLoadProvider.java index accf20eed601f2b8d387be1426fd2163563b6969..40c0713160e71f6c6c514c4d3a796ee76fe710f7 100644 --- a/org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/extension/IEclipseResourcePostLoadProvider.java +++ b/org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/extension/IEclipseResourcePostLoadProvider.java @@ -29,6 +29,8 @@ import org.fortiss.tooling.kernel.extension.data.ITopLevelElement; * @version $Rev$ * @ConQAT.Rating GREEN Hash: 9D7025FE2AE6D9B3CAE8A20352705445 */ +@Deprecated +// FIXME: move to IPersistencyService public interface IEclipseResourcePostLoadProvider { /** diff --git a/org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/internal/ConstraintVerificationService.java b/org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/internal/ConstraintVerificationService.java index a9f84a4386c51ba4b3e94e85f97880bdb5afba3b..0c8d259f8f8bcf3c758f70bc0a0fdae0f0cca834 100644 --- a/org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/internal/ConstraintVerificationService.java +++ b/org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/internal/ConstraintVerificationService.java @@ -55,6 +55,14 @@ public final class ConstraintVerificationService extends KernelIntrospectionSystemService.getInstance().registerService(this); } + /** {@inheritDoc} */ + @SuppressWarnings("unchecked") + @Override + public <T extends IConstraint> void registerConstraintVerifier(IConstraintVerifier<T> verifier, + Class<T> constraintElementClass) { + addHandler(constraintElementClass, (IConstraintVerifier<IConstraint>)verifier); + } + /** {@inheritDoc} */ @Override public String getIntrospectionDescription() { diff --git a/org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/service/IConstraintVerificationService.java b/org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/service/IConstraintVerificationService.java index bf43a788a3607ffe293122e394ad22c9a535c9f8..eec848ec2247ed322b81b367cc1b93f1532ccc63 100644 --- a/org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/service/IConstraintVerificationService.java +++ b/org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/service/IConstraintVerificationService.java @@ -3,6 +3,7 @@ package org.fortiss.tooling.kernel.service; import java.util.List; import java.util.function.Consumer; +import org.fortiss.tooling.kernel.extension.IConstraintVerifier; import org.fortiss.tooling.kernel.internal.ConstraintVerificationService; import org.fortiss.tooling.kernel.model.constraints.IConstrained; import org.fortiss.tooling.kernel.model.constraints.IConstraint; @@ -34,26 +35,30 @@ public interface IConstraintVerificationService { return INSTANCE; } + /** Registers the given verifier with the service. */ + <T extends IConstraint> void registerConstraintVerifier(IConstraintVerifier<T> verifier, + Class<T> constraintElementClass); + /** * @param constraint * Verifies <code>constraint</code>. The framework always runs the verification in a * command. Should not yield any "useless" change because verification should always * update the constraint status and the checksums anyways. */ - public void verify(IConstraint constraint); + void verify(IConstraint constraint); /** * @param constraint * @return <code>true</code> if <code>constraint</code> is up to date. */ - public boolean isUpToDate(IConstraint constraint); + boolean isUpToDate(IConstraint constraint); /** * @param status * @return A list of possible automatic fixes for the (constraint of) <code>status</code>. * A status should be candidate to fixing if it is anything but successful or outdated. */ - public List<IFix> fixes(IConstraintVerificationStatus status); + List<IFix> fixes(IConstraintVerificationStatus status); /** Interface for a "fix". */ public interface IFix { @@ -61,13 +66,13 @@ public interface IConstraintVerificationService { * Description of the fix. Useful to allow the user distinguish the fix in case there are * several. */ - public String getDescription(); + String getDescription(); /** * @param status * Fixes (the constraint of) <code>status</code>. */ - public void runFix(IConstraintVerificationStatus status); + void runFix(IConstraintVerificationStatus status); } /** Utils. We store them to avoid having again thousands of different classes for one topic. */