You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@directory.apache.org by pa...@apache.org on 2007/07/19 19:03:36 UTC
svn commit: r557690 [1/3] - in
/directory/studio/trunk/studio-apacheds-schemaeditor/src:
main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/
main/java/org/apache/directory/studio/apacheds/schemaeditor/view/widget/
main/java/or...
Author: pamarcelot
Date: Thu Jul 19 10:03:26 2007
New Revision: 557690
URL: http://svn.apache.org/viewvc?view=rev&rev=557690
Log:
Refactored the Difference Engine. Added new SchemaDifference, AttributeTypeDifference and ObjectClassDifference Classes.
Added:
directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/AbstractPropertyDifference.java
directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/AliasDifference.java
- copied, changed from r555904, directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/AddAliasDifference.java
directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/AttributeTypeDifference.java
directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/ClassTypeDifference.java
- copied, changed from r555904, directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/ModifyClassTypeDifference.java
directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/CollectiveDifference.java
- copied, changed from r555904, directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/ModifyCollectiveDifference.java
directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/DescriptionDifference.java
- copied, changed from r555904, directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/AddDescriptionDifference.java
directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/DifferenceType.java
directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/EqualityDifference.java
- copied, changed from r555904, directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/AddEqualityDifference.java
directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/MandatoryATDifference.java
- copied, changed from r555904, directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/AddMandatoryATDifference.java
directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/NoUserModificationDifference.java
- copied, changed from r555904, directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/ModifyNoUserModificationDifference.java
directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/ObjectClassDifference.java
directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/ObsoleteDifference.java
- copied, changed from r555904, directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/ModifyObsoleteDifference.java
directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/OptionalATDifference.java
- copied, changed from r555904, directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/AddOptionalATDifference.java
directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/OrderingDifference.java
- copied, changed from r555904, directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/AddOrderingDifference.java
directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/PropertyDifference.java
directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/SchemaDifference.java
directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/SingleValueDifference.java
- copied, changed from r555904, directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/ModifySingleValueDifference.java
directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/SubstringDifference.java
- copied, changed from r555904, directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/AddSubstringDifference.java
directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/SuperiorATDifference.java
- copied, changed from r555904, directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/AddSuperiorATDifference.java
directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/SuperiorOCDifference.java
- copied, changed from r555904, directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/AddSuperiorOCDifference.java
directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/SyntaxDifference.java
- copied, changed from r555904, directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/AddSyntaxDifference.java
directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/SyntaxLengthDifference.java
- copied, changed from r555904, directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/AddSyntaxLengthDifference.java
directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/UsageDifference.java
- copied, changed from r555904, directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/ModifyUsageDifference.java
directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/view/wrappers/difference/
directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/view/wrappers/difference/AbstractDifferenceWrapper.java
directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/view/wrappers/difference/AttributeTypeDifferenceWrapper.java
directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/view/wrappers/difference/ObjectClassDifferenceWrapper.java
directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/view/wrappers/difference/SchemaDifferenceWrapper.java
directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/view/wrappers/difference/WrapperState.java
Removed:
directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/AbstractAddDifference.java
directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/AbstractModifyDifference.java
directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/AbstractRemoveDifference.java
directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/AddAliasDifference.java
directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/AddDescriptionDifference.java
directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/AddDifference.java
directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/AddEqualityDifference.java
directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/AddMandatoryATDifference.java
directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/AddOptionalATDifference.java
directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/AddOrderingDifference.java
directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/AddSubstringDifference.java
directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/AddSuperiorATDifference.java
directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/AddSuperiorOCDifference.java
directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/AddSyntaxDifference.java
directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/AddSyntaxLengthDifference.java
directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/ModifyClassTypeDifference.java
directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/ModifyCollectiveDifference.java
directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/ModifyDescriptionDifference.java
directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/ModifyDifference.java
directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/ModifyEqualityDifference.java
directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/ModifyNoUserModificationDifference.java
directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/ModifyObsoleteDifference.java
directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/ModifyOrderingDifference.java
directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/ModifySingleValueDifference.java
directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/ModifySubstringDifference.java
directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/ModifySuperiorATDifference.java
directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/ModifySyntaxDifference.java
directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/ModifySyntaxLengthDifference.java
directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/ModifyUsageDifference.java
directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/RemoveAliasDifference.java
directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/RemoveDescriptionDifference.java
directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/RemoveDifference.java
directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/RemoveEqualityDifference.java
directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/RemoveMandatoryATDifference.java
directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/RemoveOptionalATDifference.java
directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/RemoveOrderingDifference.java
directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/RemoveSubstringDifference.java
directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/RemoveSuperiorATDifference.java
directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/RemoveSuperiorOCDifference.java
directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/RemoveSyntaxDifference.java
directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/RemoveSyntaxLengthDifference.java
Modified:
directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/AbstractDifference.java
directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/Difference.java
directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/DifferenceEngine.java
directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/view/widget/DifferencesWidgetLabelProvider.java
directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/view/widget/DifferencesWidgetPropertySorter.java
directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/view/widget/DifferencesWidgetTypeSorter.java
directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/view/wizards/CommitChangesDifferencesWizardPage.java
directory/studio/trunk/studio-apacheds-schemaeditor/src/test/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/DifferenceEngineTest.java
Modified: directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/AbstractDifference.java
URL: http://svn.apache.org/viewvc/directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/AbstractDifference.java?view=diff&rev=557690&r1=557689&r2=557690
==============================================================================
--- directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/AbstractDifference.java (original)
+++ directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/AbstractDifference.java Thu Jul 19 10:03:26 2007
@@ -20,14 +20,23 @@
package org.apache.directory.studio.apacheds.schemaeditor.model.difference;
+/**
+ * This class represents the AbstractDifference.
+ *
+ * @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
+ * @version $Rev$, $Date$
+ */
public class AbstractDifference implements Difference
{
/** The source Object */
private Object source;
- /** The sestination Object */
+ /** The destination Object */
private Object destination;
+ /** The type of difference */
+ private DifferenceType type;
+
/**
* Creates a new instance of AbstractDifference.
@@ -44,6 +53,24 @@
}
+ /**
+ * Creates a new instance of AbstractDifference.
+ *
+ * @param source
+ * the source Object
+ * @param destination
+ * the destination Object
+ * @param type
+ * the type
+ */
+ public AbstractDifference( Object source, Object destination, DifferenceType type )
+ {
+ this.source = source;
+ this.destination = destination;
+ this.type = type;
+ }
+
+
/* (non-Javadoc)
* @see org.apache.directory.studio.apacheds.schemaeditor.model.difference.Difference#getDestination()
*/
@@ -77,5 +104,23 @@
public void setSource( Object source )
{
this.source = source;
+ }
+
+
+ /* (non-Javadoc)
+ * @see org.apache.directory.studio.apacheds.schemaeditor.model.difference.Difference#getType()
+ */
+ public DifferenceType getType()
+ {
+ return type;
+ }
+
+
+ /* (non-Javadoc)
+ * @see org.apache.directory.studio.apacheds.schemaeditor.model.difference.Difference#setType(org.apache.directory.studio.apacheds.schemaeditor.model.difference.DifferenceType)
+ */
+ public void setType( DifferenceType type )
+ {
+ this.type = type;
}
}
Added: directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/AbstractPropertyDifference.java
URL: http://svn.apache.org/viewvc/directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/AbstractPropertyDifference.java?view=auto&rev=557690
==============================================================================
--- directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/AbstractPropertyDifference.java (added)
+++ directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/AbstractPropertyDifference.java Thu Jul 19 10:03:26 2007
@@ -0,0 +1,102 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ */
+package org.apache.directory.studio.apacheds.schemaeditor.model.difference;
+
+
+/**
+ * This abstract class represents an Abstract Property Difference.
+ *
+ * @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
+ * @version $Rev$, $Date$
+ */
+public abstract class AbstractPropertyDifference extends AbstractDifference implements PropertyDifference
+{
+ /** The old value*/
+ private Object oldValue;
+
+ /** The new value */
+ private Object newValue;
+
+
+ /**
+ * Creates a new instance of AbstractPropertyDifference.
+ *
+ * @param source
+ * the source Object
+ * @param destination
+ * the destination Object
+ * @param type
+ * the type
+ */
+ public AbstractPropertyDifference( Object source, Object destination, DifferenceType type )
+ {
+ super( source, destination, type );
+ }
+
+
+ /**
+ * Creates a new instance of AbstractPropertyDifference.
+ *
+ * @param source
+ * the source Object
+ * @param destination
+ * the destination Object
+ */
+ public AbstractPropertyDifference( Object source, Object destination )
+ {
+ super( source, destination );
+ }
+
+
+ /* (non-Javadoc)
+ * @see org.apache.directory.studio.apacheds.schemaeditor.model.difference.PropertyDifference#getNewValue()
+ */
+ public Object getNewValue()
+ {
+ return newValue;
+ }
+
+
+ /* (non-Javadoc)
+ * @see org.apache.directory.studio.apacheds.schemaeditor.model.difference.PropertyDifference#setNewValue(java.lang.Object)
+ */
+ public void setNewValue( Object newValue )
+ {
+ this.newValue = newValue;
+ }
+
+
+ /* (non-Javadoc)
+ * @see org.apache.directory.studio.apacheds.schemaeditor.model.difference.PropertyDifference#getOldValue()
+ */
+ public Object getOldValue()
+ {
+ return oldValue;
+ }
+
+
+ /* (non-Javadoc)
+ * @see org.apache.directory.studio.apacheds.schemaeditor.model.difference.PropertyDifference#setOldValue(java.lang.Object)
+ */
+ public void setOldValue( Object oldValue )
+ {
+ this.oldValue = oldValue;
+ }
+}
Copied: directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/AliasDifference.java (from r555904, directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/AddAliasDifference.java)
URL: http://svn.apache.org/viewvc/directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/AliasDifference.java?view=diff&rev=557690&p1=directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/AddAliasDifference.java&r1=555904&p2=directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/AliasDifference.java&r2=557690
==============================================================================
--- directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/AddAliasDifference.java (original)
+++ directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/AliasDifference.java Thu Jul 19 10:03:26 2007
@@ -21,39 +21,39 @@
/**
- * This class represents the difference of an added alias.
+ * This class represents a difference of alias.
*
* @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
* @version $Rev$, $Date$
*/
-public class AddAliasDifference extends AbstractAddDifference
+public class AliasDifference extends AbstractPropertyDifference
{
/**
- * Creates a new instance of AddAliasDifference.
+ * Creates a new instance of AliasDifference.
*
* @param source
* the source Object
* @param destination
* the destination Object
+ * @param type
+ * the type
*/
- public AddAliasDifference( Object source, Object destination )
+ public AliasDifference( Object source, Object destination, DifferenceType type )
{
- super( source, destination );
+ super( source, destination, type );
}
/**
- * Creates a new instance of AddAliasDifference.
+ * Creates a new instance of AliasDifference.
*
* @param source
* the source Object
* @param destination
* the destination Object
- * @param value
- * the value
*/
- public AddAliasDifference( Object source, Object destination, Object value )
+ public AliasDifference( Object source, Object destination )
{
- super( source, destination, value );
- }
+ super( source, destination );
+ }
}
Added: directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/AttributeTypeDifference.java
URL: http://svn.apache.org/viewvc/directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/AttributeTypeDifference.java?view=auto&rev=557690
==============================================================================
--- directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/AttributeTypeDifference.java (added)
+++ directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/AttributeTypeDifference.java Thu Jul 19 10:03:26 2007
@@ -0,0 +1,103 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ */
+package org.apache.directory.studio.apacheds.schemaeditor.model.difference;
+
+
+import java.util.ArrayList;
+import java.util.List;
+
+
+/**
+ * This class represents an attribute type difference.
+ *
+ * @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
+ * @version $Rev$, $Date$
+ */
+public class AttributeTypeDifference extends AbstractDifference
+{
+ /** The differences */
+ private List<PropertyDifference> differences = new ArrayList<PropertyDifference>();
+
+
+ /**
+ * Creates a new instance of AttributeTypeDifference.
+ *
+ * @param source
+ * the source Object
+ * @param destination
+ * the destination Object
+ * @param type
+ * the type
+ */
+ public AttributeTypeDifference( Object source, Object destination, DifferenceType type )
+ {
+ super( source, destination, type );
+ }
+
+
+ /**
+ * Creates a new instance of AttributeTypeDifference.
+ *
+ * @param source
+ * the source Object
+ * @param destination
+ * the destination Object
+ */
+ public AttributeTypeDifference( Object source, Object destination )
+ {
+ super( source, destination );
+ }
+
+
+ /**
+ * Gets the property differences.
+ *
+ * @return
+ * the property differences
+ */
+ public List<PropertyDifference> getDifferences()
+ {
+ return differences;
+ }
+
+
+ /**
+ * Adds a difference.
+ *
+ * @param difference
+ * the difference
+ */
+ public void addDifference( PropertyDifference difference )
+ {
+ differences.add( difference );
+ }
+
+
+ /**
+ * Removes a difference.
+ *
+ * @param difference
+ * the difference
+ */
+ public void removeDifference( PropertyDifference difference )
+ {
+ differences.remove( difference );
+ }
+}
Copied: directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/ClassTypeDifference.java (from r555904, directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/ModifyClassTypeDifference.java)
URL: http://svn.apache.org/viewvc/directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/ClassTypeDifference.java?view=diff&rev=557690&p1=directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/ModifyClassTypeDifference.java&r1=555904&p2=directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/ClassTypeDifference.java&r2=557690
==============================================================================
--- directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/ModifyClassTypeDifference.java (original)
+++ directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/ClassTypeDifference.java Thu Jul 19 10:03:26 2007
@@ -21,41 +21,23 @@
/**
- * This class represents the difference of a modified class type.
+ * This class represents a difference of class type.
*
* @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
* @version $Rev$, $Date$
*/
-public class ModifyClassTypeDifference extends AbstractModifyDifference
+public class ClassTypeDifference extends AbstractPropertyDifference
{
/**
- * Creates a new instance of ModifyClassTypeDifference.
+ * Creates a new instance of ClassTypeDifference.
*
* @param source
* the source Object
* @param destination
* the destination Object
*/
- public ModifyClassTypeDifference( Object source, Object destination )
+ public ClassTypeDifference( Object source, Object destination )
{
- super( source, destination );
- }
-
-
- /**
- * Creates a new instance of ModifyClassTypeDifference.
- *
- * @param source
- * the source Object
- * @param destination
- * the destination Object
- * @param oldValue
- * the old value
- * @param newValue
- * the new value
- */
- public ModifyClassTypeDifference( Object source, Object destination, Object oldValue, Object newValue )
- {
- super( source, destination, oldValue, newValue );
+ super( source, destination, DifferenceType.MODIFIED );
}
}
Copied: directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/CollectiveDifference.java (from r555904, directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/ModifyCollectiveDifference.java)
URL: http://svn.apache.org/viewvc/directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/CollectiveDifference.java?view=diff&rev=557690&p1=directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/ModifyCollectiveDifference.java&r1=555904&p2=directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/CollectiveDifference.java&r2=557690
==============================================================================
--- directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/ModifyCollectiveDifference.java (original)
+++ directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/CollectiveDifference.java Thu Jul 19 10:03:26 2007
@@ -21,41 +21,23 @@
/**
- * This class represents the difference of a modified collective value.
+ * This class represents a difference of collective value.
*
* @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
* @version $Rev$, $Date$
*/
-public class ModifyCollectiveDifference extends AbstractModifyDifference
+public class CollectiveDifference extends AbstractPropertyDifference
{
/**
- * Creates a new instance of ModifyCollectiveDifference.
+ * Creates a new instance of CollectiveDifference.
*
* @param source
* the source Object
* @param destination
* the destination Object
*/
- public ModifyCollectiveDifference( Object source, Object destination )
+ public CollectiveDifference( Object source, Object destination )
{
- super( source, destination );
- }
-
-
- /**
- * Creates a new instance of ModifyCollectiveDifference.
- *
- * @param source
- * the source Object
- * @param destination
- * the destination Object
- * @param oldValue
- * the old value
- * @param newValue
- * the new value
- */
- public ModifyCollectiveDifference( Object source, Object destination, Object oldValue, Object newValue )
- {
- super( source, destination, oldValue, newValue );
+ super( source, destination, DifferenceType.MODIFIED );
}
}
Copied: directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/DescriptionDifference.java (from r555904, directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/AddDescriptionDifference.java)
URL: http://svn.apache.org/viewvc/directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/DescriptionDifference.java?view=diff&rev=557690&p1=directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/AddDescriptionDifference.java&r1=555904&p2=directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/DescriptionDifference.java&r2=557690
==============================================================================
--- directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/AddDescriptionDifference.java (original)
+++ directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/DescriptionDifference.java Thu Jul 19 10:03:26 2007
@@ -21,39 +21,39 @@
/**
- * This class represents the difference of an added description.
+ * This class represents a difference of description.
*
* @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
* @version $Rev$, $Date$
*/
-public class AddDescriptionDifference extends AbstractAddDifference
+public class DescriptionDifference extends AbstractPropertyDifference
{
/**
- * Creates a new instance of AddDescriptionDifference.
+ * Creates a new instance of DescriptionDifference.
*
* @param source
* the source Object
* @param destination
* the destination Object
+ * @param type
+ * the type
*/
- public AddDescriptionDifference( Object source, Object destination )
+ public DescriptionDifference( Object source, Object destination, DifferenceType type )
{
- super( source, destination );
+ super( source, destination, type );
}
/**
- * Creates a new instance of AddDescriptionDifference.
+ * Creates a new instance of DescriptionDifference.
*
* @param source
* the source Object
* @param destination
- * the destination Object
- * @param value
- * the value
+ * the destination Object
*/
- public AddDescriptionDifference( Object source, Object destination, Object value )
+ public DescriptionDifference( Object source, Object destination )
{
- super( source, destination, value );
+ super( source, destination );
}
}
Modified: directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/Difference.java
URL: http://svn.apache.org/viewvc/directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/Difference.java?view=diff&rev=557690&r1=557689&r2=557690
==============================================================================
--- directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/Difference.java (original)
+++ directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/Difference.java Thu Jul 19 10:03:26 2007
@@ -28,28 +28,6 @@
*/
public interface Difference
{
- public enum DifferenceType
- {
- ADD_ALIAS, REMOVE_ALIAS,
- ADD_DESCRIPTION, MODIFY_DESCRIPTION, REMOVE_DRESCRIPTION,
- ADD_SUPERIOR_AT, MODIFY_SUPERIOR_AT, REMOVE_SUPERIOR_AT,
- ADD_SUPERIOR_OC, REMOVE_SUPERIOR_OC,
- ADD_USAGE, MODIFY_USAGE, REMOVE_USAGE,
- ADD_CLASS_TYPE, MODIFY_CLASS_TYPE, REMOVE_CLASS_TYPE,
- ADD_SYNTAX, MODIFY_SYNTAX, REMOVE_SYNTAX,
- ADD_SYNTAX_LENGTH, MODIFY_SYNTAX_LENGTH, REMOVE_SYNTAX_LENGTH,
- SET_OBSOLETE,
- SET_SINGLE_VALUE,
- SET_COLLECTIVE,
- SET_NO_USER_MODIFICATION,
- ADD_EQUALITY, MODIFY_EQUALITY, REMOVE_EQUALITY,
- ADD_ORDERING, MODIFY_ORDERING, REMOVE_ORDERING,
- ADD_SUBSTRING, MODIFY_SUBSTRING, REMOVE_SUBSTRING,
- ADD_MANDATORY_AT, REMOVE_MANDATORY_AT,
- ADD_OPTIONAL_AT, REMOVE_OPTIONAL_AT
- }
-
-
/**
* Gets the source Object.
*
@@ -84,4 +62,22 @@
* the destination Object
*/
public void setDestination( Object destination );
+
+
+ /**
+ * Gets the type.
+ *
+ * @return
+ * the type
+ */
+ public DifferenceType getType();
+
+
+ /**
+ * Sets the type.
+ *
+ * @param type
+ * the type
+ */
+ public void setType( DifferenceType type );
}
Modified: directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/DifferenceEngine.java
URL: http://svn.apache.org/viewvc/directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/DifferenceEngine.java?view=diff&rev=557690&r1=557689&r2=557690
==============================================================================
--- directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/DifferenceEngine.java (original)
+++ directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/DifferenceEngine.java Thu Jul 19 10:03:26 2007
@@ -127,7 +127,7 @@
{
differences.add( usageDifference );
}
-
+
// Superior
Difference superiorDifference = getSuperiorDifference( at1, at2 );
if ( superiorDifference != null )
@@ -233,7 +233,9 @@
{
if ( !so2NamesList.contains( name ) )
{
- differences.add( new RemoveAliasDifference( so1, so2, name ) );
+ PropertyDifference diff = new AliasDifference( so1, so2, DifferenceType.REMOVED );
+ diff.setOldValue( name );
+ differences.add( diff );
}
}
@@ -241,7 +243,9 @@
{
if ( !so1NamesList.contains( name ) )
{
- differences.add( new AddAliasDifference( so1, so2, name ) );
+ PropertyDifference diff = new AliasDifference( so1, so2, DifferenceType.ADDED );
+ diff.setNewValue( name );
+ differences.add( diff );
}
}
@@ -266,17 +270,24 @@
if ( ( so1Description == null ) && ( so2Description != null ) )
{
- return new AddDescriptionDifference( so1, so2, so2Description );
+ PropertyDifference diff = new DescriptionDifference( so1, so2, DifferenceType.ADDED );
+ diff.setNewValue( so2Description );
+ return diff;
}
else if ( ( so1Description != null ) && ( so2Description == null ) )
{
- return new RemoveDescriptionDifference( so1, so2, null );
+ PropertyDifference diff = new DescriptionDifference( so1, so2, DifferenceType.REMOVED );
+ diff.setOldValue( so1Description );
+ return diff;
}
else if ( ( so1Description != null ) && ( so2Description != null ) )
{
if ( !so1Description.equals( so2Description ) )
{
- return new ModifyDescriptionDifference( so1, so2, so1Description, so2Description );
+ PropertyDifference diff = new DescriptionDifference( so1, so2, DifferenceType.MODIFIED );
+ diff.setOldValue( so1Description );
+ diff.setNewValue( so2Description );
+ return diff;
}
}
@@ -301,7 +312,10 @@
if ( so1Obsolete != so2Obsolete )
{
- return new ModifyObsoleteDifference( so1, so2, so1Obsolete, so2Obsolete );
+ PropertyDifference diff = new ObsoleteDifference( so1, so2 );
+ diff.setOldValue( so1Obsolete );
+ diff.setNewValue( so2Obsolete );
+ return diff;
}
return null;
@@ -325,7 +339,10 @@
if ( oc1ClassType != oc2ClassType )
{
- return new ModifyClassTypeDifference( oc1, oc2, oc1ClassType, oc2ClassType );
+ PropertyDifference diff = new ClassTypeDifference( oc1, oc2 );
+ diff.setOldValue( oc1ClassType );
+ diff.setNewValue( oc2ClassType );
+ return diff;
}
return null;
@@ -370,7 +387,9 @@
{
if ( !oc2SupsList.contains( name ) )
{
- differences.add( new RemoveSuperiorOCDifference( oc1, oc2, name ) );
+ PropertyDifference diff = new SuperiorOCDifference( oc1, oc2, DifferenceType.REMOVED );
+ diff.setOldValue( name );
+ differences.add( diff );
}
}
@@ -378,7 +397,9 @@
{
if ( !oc1SupsList.contains( name ) )
{
- differences.add( new AddSuperiorOCDifference( oc1, oc2, name ) );
+ PropertyDifference diff = new SuperiorOCDifference( oc1, oc2, DifferenceType.ADDED );
+ diff.setNewValue( name );
+ differences.add( diff );
}
}
@@ -424,7 +445,9 @@
{
if ( !oc2MustsList.contains( name ) )
{
- differences.add( new RemoveMandatoryATDifference( oc1, oc2, name ) );
+ PropertyDifference diff = new MandatoryATDifference( oc1, oc2, DifferenceType.REMOVED );
+ diff.setOldValue( name );
+ differences.add( diff );
}
}
@@ -432,7 +455,9 @@
{
if ( !oc1MustsList.contains( name ) )
{
- differences.add( new AddMandatoryATDifference( oc1, oc2, name ) );
+ PropertyDifference diff = new MandatoryATDifference( oc1, oc2, DifferenceType.ADDED );
+ diff.setNewValue( name );
+ differences.add( diff );
}
}
@@ -478,7 +503,9 @@
{
if ( !oc2MaysList.contains( name ) )
{
- differences.add( new RemoveOptionalATDifference( oc1, oc2, name ) );
+ PropertyDifference diff = new OptionalATDifference( oc1, oc2, DifferenceType.REMOVED );
+ diff.setOldValue( name );
+ differences.add( diff );
}
}
@@ -486,7 +513,9 @@
{
if ( !oc1MaysList.contains( name ) )
{
- differences.add( new AddOptionalATDifference( oc1, oc2, name ) );
+ PropertyDifference diff = new OptionalATDifference( oc1, oc2, DifferenceType.ADDED );
+ diff.setNewValue( name );
+ differences.add( diff );
}
}
@@ -511,13 +540,16 @@
if ( at1Usage != at2Usage )
{
- return new ModifyUsageDifference( at1, at2, at1Usage, at2Usage );
+ PropertyDifference diff = new UsageDifference( at1, at2 );
+ diff.setOldValue( at1Usage );
+ diff.setNewValue( at2Usage );
+ return diff;
}
return null;
}
-
-
+
+
/**
* Gets the 'Superior' difference between the two AttributeTypeImpl Objects.
*
@@ -535,17 +567,24 @@
if ( ( at1Superior == null ) && ( at2Superior != null ) )
{
- return new AddSuperiorATDifference( at1, at2, at2Superior );
+ PropertyDifference diff = new SuperiorATDifference( at1, at2, DifferenceType.ADDED );
+ diff.setNewValue( at2Superior );
+ return diff;
}
else if ( ( at1Superior != null ) && ( at2Superior == null ) )
{
- return new RemoveSuperiorATDifference( at1, at2, null );
+ PropertyDifference diff = new SuperiorATDifference( at1, at2, DifferenceType.REMOVED );
+ diff.setOldValue( at1Superior );
+ return diff;
}
else if ( ( at1Superior != null ) && ( at2Superior != null ) )
{
if ( !at1Superior.equals( at2Superior ) )
{
- return new ModifySuperiorATDifference( at1, at2, at1Superior, at2Superior );
+ PropertyDifference diff = new SuperiorATDifference( at1, at2, DifferenceType.MODIFIED );
+ diff.setOldValue( at1Superior );
+ diff.setNewValue( at2Superior );
+ return diff;
}
}
@@ -570,17 +609,24 @@
if ( ( at1Syntax == null ) && ( at2Syntax != null ) )
{
- return new AddSyntaxDifference( at1, at2, at2Syntax );
+ PropertyDifference diff = new SyntaxDifference( at1, at2, DifferenceType.ADDED );
+ diff.setNewValue( at2Syntax );
+ return diff;
}
else if ( ( at1Syntax != null ) && ( at2Syntax == null ) )
{
- return new RemoveSyntaxDifference( at1, at2, null );
+ PropertyDifference diff = new SyntaxDifference( at1, at2, DifferenceType.REMOVED );
+ diff.setOldValue( at1Syntax );
+ return diff;
}
else if ( ( at1Syntax != null ) && ( at2Syntax != null ) )
{
if ( !at1Syntax.equals( at2Syntax ) )
{
- return new ModifySyntaxDifference( at1, at2, at1Syntax, at2Syntax );
+ PropertyDifference diff = new SyntaxDifference( at1, at2, DifferenceType.MODIFIED );
+ diff.setOldValue( at1Syntax );
+ diff.setNewValue( at2Syntax );
+ return diff;
}
}
@@ -605,17 +651,24 @@
if ( ( at1SyntaxLength == -1 ) && ( at2SyntaxLength != -1 ) )
{
- return new AddSyntaxLengthDifference( at1, at2, at2SyntaxLength );
+ PropertyDifference diff = new SyntaxLengthDifference( at1, at2, DifferenceType.ADDED );
+ diff.setNewValue( at2SyntaxLength );
+ return diff;
}
else if ( ( at1SyntaxLength != -1 ) && ( at2SyntaxLength == -1 ) )
{
- return new RemoveSyntaxLengthDifference( at1, at2, null );
+ PropertyDifference diff = new SyntaxLengthDifference( at1, at2, DifferenceType.REMOVED );
+ diff.setOldValue( at1SyntaxLength );
+ return diff;
}
else if ( ( at1SyntaxLength != -1 ) && ( at2SyntaxLength != -1 ) )
{
if ( at1SyntaxLength != at2SyntaxLength )
{
- return new ModifySyntaxLengthDifference( at1, at2, at1SyntaxLength, at2SyntaxLength );
+ PropertyDifference diff = new SyntaxLengthDifference( at1, at2, DifferenceType.MODIFIED );
+ diff.setOldValue( at1SyntaxLength );
+ diff.setNewValue( at2SyntaxLength );
+ return diff;
}
}
@@ -640,7 +693,10 @@
if ( at1SingleValue != at2SingleValue )
{
- return new ModifySingleValueDifference( at1, at2, at1SingleValue, at2SingleValue );
+ PropertyDifference diff = new SingleValueDifference( at1, at2 );
+ diff.setOldValue( at1SingleValue );
+ diff.setNewValue( at2SingleValue );
+ return diff;
}
return null;
@@ -664,7 +720,10 @@
if ( at1Collective != at2Collective )
{
- return new ModifyCollectiveDifference( at1, at2, at1Collective, at2Collective );
+ PropertyDifference diff = new CollectiveDifference( at1, at2 );
+ diff.setOldValue( at1Collective );
+ diff.setNewValue( at2Collective );
+ return diff;
}
return null;
@@ -688,7 +747,10 @@
if ( at1CanUserModify != at2CanUserModify )
{
- return new ModifyNoUserModificationDifference( at1, at2, at1CanUserModify, at2CanUserModify );
+ PropertyDifference diff = new NoUserModificationDifference( at1, at2 );
+ diff.setOldValue( at1CanUserModify );
+ diff.setNewValue( at2CanUserModify );
+ return diff;
}
return null;
@@ -712,17 +774,24 @@
if ( ( at1Equality == null ) && ( at2Equality != null ) )
{
- return new AddEqualityDifference( at1, at2, at2Equality );
+ PropertyDifference diff = new EqualityDifference( at1, at2, DifferenceType.ADDED );
+ diff.setNewValue( at2Equality );
+ return diff;
}
else if ( ( at1Equality != null ) && ( at2Equality == null ) )
{
- return new RemoveEqualityDifference( at1, at2, null );
+ PropertyDifference diff = new EqualityDifference( at1, at2, DifferenceType.REMOVED );
+ diff.setOldValue( at1Equality );
+ return diff;
}
else if ( ( at1Equality != null ) && ( at2Equality != null ) )
{
if ( !at1Equality.equals( at2Equality ) )
{
- return new ModifyEqualityDifference( at1, at2, at1Equality, at2Equality );
+ PropertyDifference diff = new EqualityDifference( at1, at2, DifferenceType.MODIFIED );
+ diff.setOldValue( at1Equality );
+ diff.setNewValue( at2Equality );
+ return diff;
}
}
@@ -747,17 +816,24 @@
if ( ( at1Ordering == null ) && ( at2Ordering != null ) )
{
- return new AddOrderingDifference( at1, at2, at2Ordering );
+ PropertyDifference diff = new OrderingDifference( at1, at2, DifferenceType.ADDED );
+ diff.setNewValue( at2Ordering );
+ return diff;
}
else if ( ( at1Ordering != null ) && ( at2Ordering == null ) )
{
- return new RemoveOrderingDifference( at1, at2, null );
+ PropertyDifference diff = new OrderingDifference( at1, at2, DifferenceType.REMOVED );
+ diff.setOldValue( at1Ordering );
+ return diff;
}
else if ( ( at1Ordering != null ) && ( at2Ordering != null ) )
{
if ( !at1Ordering.equals( at2Ordering ) )
{
- return new ModifyOrderingDifference( at1, at2, at1Ordering, at2Ordering );
+ PropertyDifference diff = new OrderingDifference( at1, at2, DifferenceType.MODIFIED );
+ diff.setOldValue( at1Ordering );
+ diff.setNewValue( at2Ordering );
+ return diff;
}
}
@@ -782,17 +858,24 @@
if ( ( at1Substring == null ) && ( at2Substring != null ) )
{
- return new AddSubstringDifference( at1, at2, at2Substring );
+ PropertyDifference diff = new SubstringDifference( at1, at2, DifferenceType.ADDED );
+ diff.setNewValue( at2Substring );
+ return diff;
}
else if ( ( at1Substring != null ) && ( at2Substring == null ) )
{
- return new RemoveSubstringDifference( at1, at2, null );
+ PropertyDifference diff = new SubstringDifference( at1, at2, DifferenceType.REMOVED );
+ diff.setOldValue( at1Substring );
+ return diff;
}
else if ( ( at1Substring != null ) && ( at2Substring != null ) )
{
if ( !at1Substring.equals( at2Substring ) )
{
- return new ModifySubstringDifference( at1, at2, at1Substring, at2Substring );
+ PropertyDifference diff = new SubstringDifference( at1, at2, DifferenceType.MODIFIED );
+ diff.setOldValue( at1Substring );
+ diff.setNewValue( at2Substring );
+ return diff;
}
}
Added: directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/DifferenceType.java
URL: http://svn.apache.org/viewvc/directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/DifferenceType.java?view=auto&rev=557690
==============================================================================
--- directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/DifferenceType.java (added)
+++ directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/DifferenceType.java Thu Jul 19 10:03:26 2007
@@ -0,0 +1,32 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ */
+package org.apache.directory.studio.apacheds.schemaeditor.model.difference;
+
+
+/**
+ * This enum represents the type of Difference.
+ *
+ * @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
+ * @version $Rev$, $Date$
+ */
+public enum DifferenceType
+{
+ IDENTICAL, ADDED, MODIFIED, REMOVED
+}
\ No newline at end of file
Copied: directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/EqualityDifference.java (from r555904, directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/AddEqualityDifference.java)
URL: http://svn.apache.org/viewvc/directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/EqualityDifference.java?view=diff&rev=557690&p1=directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/AddEqualityDifference.java&r1=555904&p2=directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/EqualityDifference.java&r2=557690
==============================================================================
--- directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/AddEqualityDifference.java (original)
+++ directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/EqualityDifference.java Thu Jul 19 10:03:26 2007
@@ -26,34 +26,35 @@
* @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
* @version $Rev$, $Date$
*/
-public class AddEqualityDifference extends AbstractAddDifference
+public class EqualityDifference extends AbstractPropertyDifference
{
/**
- * Creates a new instance of AddEqualityDifference.
+ * Creates a new instance of EqualityDifference.
*
* @param source
* the source Object
* @param destination
* the destination Object
+ * @param type
+ * the type
*/
- public AddEqualityDifference( Object source, Object destination )
+ public EqualityDifference( Object source, Object destination, DifferenceType type )
{
- super( source, destination );
+ super( source, destination, type );
+ // TODO Auto-generated constructor stub
}
/**
- * Creates a new instance of AddEqualityDifference.
+ * Creates a new instance of EqualityDifference.
*
* @param source
* the source Object
* @param destination
* the destination Object
- * @param value
- * the value
*/
- public AddEqualityDifference( Object source, Object destination, Object value )
+ public EqualityDifference( Object source, Object destination )
{
- super( source, destination, value );
+ super( source, destination );
}
}
Copied: directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/MandatoryATDifference.java (from r555904, directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/AddMandatoryATDifference.java)
URL: http://svn.apache.org/viewvc/directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/MandatoryATDifference.java?view=diff&rev=557690&p1=directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/AddMandatoryATDifference.java&r1=555904&p2=directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/MandatoryATDifference.java&r2=557690
==============================================================================
--- directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/AddMandatoryATDifference.java (original)
+++ directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/MandatoryATDifference.java Thu Jul 19 10:03:26 2007
@@ -21,39 +21,38 @@
/**
- * This class represents the difference of an added mandatory attribute type.
+ * This class represents a difference of mandatory attribute type.
*
* @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
* @version $Rev$, $Date$
*/
-public class AddMandatoryATDifference extends AbstractAddDifference
+public class MandatoryATDifference extends AbstractPropertyDifference
{
/**
- * Creates a new instance of AddMandatoryATDifference.
+ * Creates a new instance of MandatoryATDifference.
*
* @param source
* the source Object
* @param destination
* the destination Object
+ * @param type
+ * the type
*/
- public AddMandatoryATDifference( Object source, Object destination )
+ public MandatoryATDifference( Object source, Object destination, DifferenceType type )
{
- super( source, destination );
+ super( source, destination, type );
}
-
/**
- * Creates a new instance of AddMandatoryATDifference.
+ * Creates a new instance of MandatoryATDifference.
*
* @param source
* the source Object
* @param destination
* the destination Object
- * @param value
- * the value
*/
- public AddMandatoryATDifference( Object source, Object destination, Object value )
+ public MandatoryATDifference( Object source, Object destination )
{
- super( source, destination, value );
+ super( source, destination );
}
}
Copied: directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/NoUserModificationDifference.java (from r555904, directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/ModifyNoUserModificationDifference.java)
URL: http://svn.apache.org/viewvc/directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/NoUserModificationDifference.java?view=diff&rev=557690&p1=directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/ModifyNoUserModificationDifference.java&r1=555904&p2=directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/NoUserModificationDifference.java&r2=557690
==============================================================================
--- directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/ModifyNoUserModificationDifference.java (original)
+++ directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/NoUserModificationDifference.java Thu Jul 19 10:03:26 2007
@@ -21,41 +21,23 @@
/**
- * This class represents the difference of a modified no user modification value.
+ * This class represents a difference of no user modification value.
*
* @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
* @version $Rev$, $Date$
*/
-public class ModifyNoUserModificationDifference extends AbstractModifyDifference
+public class NoUserModificationDifference extends AbstractPropertyDifference
{
/**
- * Creates a new instance of ModifyNoUserModificationDifference.
+ * Creates a new instance of NoUserModificationDifference.
*
* @param source
* the source Object
* @param destination
* the destination Object
*/
- public ModifyNoUserModificationDifference( Object source, Object destination )
+ public NoUserModificationDifference( Object source, Object destination )
{
- super( source, destination );
- }
-
-
- /**
- * Creates a new instance of ModifyNoUserModificationDifference.
- *
- * @param source
- * the source Object
- * @param destination
- * the destination Object
- * @param oldValue
- * the old value
- * @param newValue
- * the new value
- */
- public ModifyNoUserModificationDifference( Object source, Object destination, Object oldValue, Object newValue )
- {
- super( source, destination, oldValue, newValue );
+ super( source, destination, DifferenceType.MODIFIED );
}
}
Added: directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/ObjectClassDifference.java
URL: http://svn.apache.org/viewvc/directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/ObjectClassDifference.java?view=auto&rev=557690
==============================================================================
--- directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/ObjectClassDifference.java (added)
+++ directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/ObjectClassDifference.java Thu Jul 19 10:03:26 2007
@@ -0,0 +1,103 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ */
+package org.apache.directory.studio.apacheds.schemaeditor.model.difference;
+
+
+import java.util.ArrayList;
+import java.util.List;
+
+
+/**
+ * This interface represents an object class difference.
+ *
+ * @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
+ * @version $Rev$, $Date$
+ */
+public class ObjectClassDifference extends AbstractDifference
+{
+ /** The differences */
+ private List<PropertyDifference> differences = new ArrayList<PropertyDifference>();
+
+
+ /**
+ * Creates a new instance of AttributeTypeDifference.
+ *
+ * @param source
+ * the source Object
+ * @param destination
+ * the destination Object
+ * @param type
+ * the type
+ */
+ public ObjectClassDifference( Object source, Object destination, DifferenceType type )
+ {
+ super( source, destination, type );
+ }
+
+
+ /**
+ * Creates a new instance of AttributeTypeDifference.
+ *
+ * @param source
+ * the source Object
+ * @param destination
+ * the destination Object
+ */
+ public ObjectClassDifference( Object source, Object destination )
+ {
+ super( source, destination );
+ }
+
+
+ /**
+ * Gets the property differences.
+ *
+ * @return
+ * the property differences
+ */
+ public List<PropertyDifference> getDifferences()
+ {
+ return differences;
+ }
+
+
+ /**
+ * Adds a difference.
+ *
+ * @param difference
+ * the difference
+ */
+ public void addDifference( PropertyDifference difference )
+ {
+ differences.add( difference );
+ }
+
+
+ /**
+ * Removes a difference.
+ *
+ * @param difference
+ * the difference
+ */
+ public void removeDifference( PropertyDifference difference )
+ {
+ differences.remove( difference );
+ }
+}
Copied: directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/ObsoleteDifference.java (from r555904, directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/ModifyObsoleteDifference.java)
URL: http://svn.apache.org/viewvc/directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/ObsoleteDifference.java?view=diff&rev=557690&p1=directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/ModifyObsoleteDifference.java&r1=555904&p2=directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/ObsoleteDifference.java&r2=557690
==============================================================================
--- directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/ModifyObsoleteDifference.java (original)
+++ directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/ObsoleteDifference.java Thu Jul 19 10:03:26 2007
@@ -21,41 +21,23 @@
/**
- * This class represents the difference of a modified obsolete value.
+ * This class represents a difference of obsolete value.
*
* @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
* @version $Rev$, $Date$
*/
-public class ModifyObsoleteDifference extends AbstractModifyDifference
+public class ObsoleteDifference extends AbstractPropertyDifference
{
/**
- * Creates a new instance of ModifyObsoleteDifference.
+ * Creates a new instance of ObsoleteDifference.
*
* @param source
* the source Object
* @param destination
* the destination Object
*/
- public ModifyObsoleteDifference( Object source, Object destination )
+ public ObsoleteDifference( Object source, Object destination )
{
- super( source, destination );
- }
-
-
- /**
- * Creates a new instance of ModifyObsoleteDifference.
- *
- * @param source
- * the source Object
- * @param destination
- * the destination Object
- * @param oldValue
- * the old value
- * @param newValue
- * the new value
- */
- public ModifyObsoleteDifference( Object source, Object destination, Object oldValue, Object newValue )
- {
- super( source, destination, oldValue, newValue );
+ super( source, destination, DifferenceType.MODIFIED );
}
}
Copied: directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/OptionalATDifference.java (from r555904, directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/AddOptionalATDifference.java)
URL: http://svn.apache.org/viewvc/directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/OptionalATDifference.java?view=diff&rev=557690&p1=directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/AddOptionalATDifference.java&r1=555904&p2=directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/OptionalATDifference.java&r2=557690
==============================================================================
--- directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/AddOptionalATDifference.java (original)
+++ directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/OptionalATDifference.java Thu Jul 19 10:03:26 2007
@@ -21,39 +21,39 @@
/**
- * This class represents the difference of an added optional attribute type.
+ * This class represents a difference of optional attribute type.
*
* @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
* @version $Rev$, $Date$
*/
-public class AddOptionalATDifference extends AbstractAddDifference
+public class OptionalATDifference extends AbstractPropertyDifference
{
/**
- * Creates a new instance of AddOptionalATDifference.
+ * Creates a new instance of OptionalATDifference.
*
* @param source
* the source Object
* @param destination
* the destination Object
+ * @param type
+ * the type
*/
- public AddOptionalATDifference( Object source, Object destination )
+ public OptionalATDifference( Object source, Object destination, DifferenceType type )
{
- super( source, destination );
+ super( source, destination, type );
}
/**
- * Creates a new instance of AddOptionalATDifference.
+ * Creates a new instance of OptionalATDifference.
*
* @param source
* the source Object
* @param destination
* the destination Object
- * @param value
- * the value
*/
- public AddOptionalATDifference( Object source, Object destination, Object value )
+ public OptionalATDifference( Object source, Object destination )
{
- super( source, destination, value );
+ super( source, destination );
}
}
Copied: directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/OrderingDifference.java (from r555904, directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/AddOrderingDifference.java)
URL: http://svn.apache.org/viewvc/directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/OrderingDifference.java?view=diff&rev=557690&p1=directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/AddOrderingDifference.java&r1=555904&p2=directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/OrderingDifference.java&r2=557690
==============================================================================
--- directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/AddOrderingDifference.java (original)
+++ directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/OrderingDifference.java Thu Jul 19 10:03:26 2007
@@ -21,39 +21,38 @@
/**
- * This class represents the difference of a added ordering.
+ * This class represents a difference of ordering.
*
* @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
* @version $Rev$, $Date$
*/
-public class AddOrderingDifference extends AbstractAddDifference
+public class OrderingDifference extends AbstractPropertyDifference
{
/**
- * Creates a new instance of AddOrderingDifference.
+ * Creates a new instance of OrderingDifference.
*
* @param source
* the source Object
* @param destination
* the destination Object
+ * @param type
+ * the type
*/
- public AddOrderingDifference( Object source, Object destination )
+ public OrderingDifference( Object source, Object destination, DifferenceType type )
{
- super( source, destination );
+ super( source, destination, type );
}
-
/**
- * Creates a new instance of AddOrderingDifference.
+ * Creates a new instance of OrderingDifference.
*
* @param source
* the source Object
* @param destination
* the destination Object
- * @param value
- * the value
*/
- public AddOrderingDifference( Object source, Object destination, Object value )
+ public OrderingDifference( Object source, Object destination )
{
- super( source, destination, value );
+ super( source, destination );
}
}
Added: directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/PropertyDifference.java
URL: http://svn.apache.org/viewvc/directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/PropertyDifference.java?view=auto&rev=557690
==============================================================================
--- directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/PropertyDifference.java (added)
+++ directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/PropertyDifference.java Thu Jul 19 10:03:26 2007
@@ -0,0 +1,65 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ */
+package org.apache.directory.studio.apacheds.schemaeditor.model.difference;
+
+
+/**
+ * This interface represents a property difference
+ *
+ * @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
+ * @version $Rev$, $Date$
+ */
+public interface PropertyDifference extends Difference
+{
+ /**
+ * Gets the old value.
+ *
+ * @return
+ * the old value
+ */
+ public Object getOldValue();
+
+
+ /**
+ * Sets the old value.
+ *
+ * @param oldValue
+ * the old value
+ */
+ public void setOldValue( Object oldValue );
+
+
+ /**
+ * Gets the new value.
+ *
+ * @return
+ * the new value
+ */
+ public Object getNewValue();
+
+
+ /**
+ * Sets the new value.
+ *
+ * @param newValue
+ * the new value
+ */
+ public void setNewValue( Object newValue );
+}
Added: directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/SchemaDifference.java
URL: http://svn.apache.org/viewvc/directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/SchemaDifference.java?view=auto&rev=557690
==============================================================================
--- directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/SchemaDifference.java (added)
+++ directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/SchemaDifference.java Thu Jul 19 10:03:26 2007
@@ -0,0 +1,142 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ */
+package org.apache.directory.studio.apacheds.schemaeditor.model.difference;
+
+
+import java.util.ArrayList;
+import java.util.List;
+
+
+/**
+ * This class represents a schema difference.
+ *
+ * @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
+ * @version $Rev$, $Date$
+ */
+public class SchemaDifference extends AbstractDifference
+{
+ /** The attribute types differences*/
+ private List<AttributeTypeDifference> attributeTypesDifferences = new ArrayList<AttributeTypeDifference>();
+
+ /** The object classes differences */
+ private List<ObjectClassDifference> objectClassesDifferences = new ArrayList<ObjectClassDifference>();
+
+
+ /**
+ * Creates a new instance of AbstractSchemaDifference.
+ *
+ * @param source
+ * the source Object
+ * @param destination
+ * the destination Object
+ * @param type
+ * the type
+ */
+ public SchemaDifference( Object source, Object destination, DifferenceType type )
+ {
+ super( source, destination, type );
+ }
+
+
+ /**
+ * Creates a new instance of AbstractSchemaDifference.
+ *
+ * @param source
+ * the source Object
+ * @param destination
+ * the destination Object
+ */
+ public SchemaDifference( Object source, Object destination )
+ {
+ super( source, destination );
+ }
+
+
+ /**
+ * Gets the attribute types differences.
+ *
+ * @return
+ * the attribute types differences
+ */
+ public List<AttributeTypeDifference> getAttributeTypesDifferences()
+ {
+ return attributeTypesDifferences;
+ }
+
+
+ /**
+ * Adds an attribute type difference.
+ *
+ * @param difference
+ * the attribute type difference
+ */
+ public void addAttributeTypeDifference( AttributeTypeDifference difference )
+ {
+ attributeTypesDifferences.add( difference );
+ }
+
+
+ /**
+ * Removes an attribute type difference.
+ *
+ * @param difference
+ * the attribute type difference
+ */
+ public void removeAttributeTypeDifference( AttributeTypeDifference difference )
+ {
+ attributeTypesDifferences.remove( difference );
+ }
+
+
+ /**
+ * Gets the object classes differences.
+ *
+ * @return
+ * the object classes differences
+ */
+ public List<ObjectClassDifference> getObjectClassesDifferences()
+ {
+ return objectClassesDifferences;
+ }
+
+
+ /**
+ * Adds an object class difference.
+ *
+ * @param difference
+ * the object class difference
+ */
+ public void addObjectClassDifference( ObjectClassDifference difference )
+ {
+ objectClassesDifferences.add( difference );
+ }
+
+
+ /**
+ * Removes an object class difference.
+ *
+ * @param difference
+ * the object class difference
+ */
+ public void removeObjectClassDifference( ObjectClassDifference difference )
+ {
+ objectClassesDifferences.remove( difference );
+ }
+}
Copied: directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/SingleValueDifference.java (from r555904, directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/ModifySingleValueDifference.java)
URL: http://svn.apache.org/viewvc/directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/SingleValueDifference.java?view=diff&rev=557690&p1=directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/ModifySingleValueDifference.java&r1=555904&p2=directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/SingleValueDifference.java&r2=557690
==============================================================================
--- directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/ModifySingleValueDifference.java (original)
+++ directory/studio/trunk/studio-apacheds-schemaeditor/src/main/java/org/apache/directory/studio/apacheds/schemaeditor/model/difference/SingleValueDifference.java Thu Jul 19 10:03:26 2007
@@ -21,41 +21,23 @@
/**
- * This class represents the difference of a modified single value value.
+ * This class represents a difference of single value value.
*
* @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
* @version $Rev$, $Date$
*/
-public class ModifySingleValueDifference extends AbstractModifyDifference
+public class SingleValueDifference extends AbstractPropertyDifference
{
/**
- * Creates a new instance of ModifySingleValueDifference.
+ * Creates a new instance of SingleValueDifference.
*
* @param source
* the source Object
* @param destination
* the destination Object
*/
- public ModifySingleValueDifference( Object source, Object destination )
+ public SingleValueDifference( Object source, Object destination )
{
- super( source, destination );
- }
-
-
- /**
- * Creates a new instance of ModifySingleValueDifference.
- *
- * @param source
- * the source Object
- * @param destination
- * the destination Object
- * @param oldValue
- * the old value
- * @param newValue
- * the new value
- */
- public ModifySingleValueDifference( Object source, Object destination, Object oldValue, Object newValue )
- {
- super( source, destination, oldValue, newValue );
+ super( source, destination, DifferenceType.MODIFIED );
}
}