ALF-7260: schema comparator

* replace path/push/pop mechanism as it doesn't work well at reporting where differences/validation errors occur.
* add getParent() to DbObject - so that a path-style identifier can be deduced for a DbObject when needed
* add DbProperty to specify a specific DbObject's property and value -- acts as a schema location pointer
* refactored Result code (need difference result and validation error result)





git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@31527 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
Matt Ward
2011-10-27 18:07:06 +00:00
parent 385003c6c9
commit 723fe98cf2
37 changed files with 1022 additions and 613 deletions

View File

@@ -25,21 +25,21 @@ import org.hibernate.dialect.Dialect;
/**
* A context made available to schema differencing and validation operations. It supplies information
* about the {@link Dialect database dialect} that should be used when validating database properties
* and the {@link Differences} object that should be populated with schema differences and validation errors.
* and the {@link Results} object that should be populated with schema differences and validation errors.
*
* @author Matt Ward
*/
public class DiffContext
{
private final Dialect dialect;
private final Differences differences;
private final Results differences;
private final List<ValidationResult> validationResults;
/**
* @param dialect
* @param differences
*/
public DiffContext(Dialect dialect, Differences differences, List<ValidationResult> validationResults)
public DiffContext(Dialect dialect, Results differences, List<ValidationResult> validationResults)
{
this.dialect = dialect;
this.differences = differences;
@@ -57,7 +57,7 @@ public class DiffContext
/**
* @return the differences
*/
public Differences getDifferences()
public Results getDifferences()
{
return this.differences;
}