wt.sandbox
Class CheckinConflictFinder

java.lang.Object
  extended bywt.sandbox.CheckinConflictFinder

class CheckinConflictFinder
extends Object

Utilities for pre-flight conflict checking for sandbox check-ins.


Nested Class Summary
private static interface CheckinConflictFinder.CollectionClassifier
           
 
Field Summary
private static Class[] BASE_CLASSES_HANDLED
           
private static Class[] KEY_CLASSES
           
private static Class[] MASTER_CLASSES
           
 
Constructor Summary
(package private) CheckinConflictFinder()
           
 
Method Summary
private static Set allocateConflictSet(int initialSize, int refMask)
           
private static Map classifyCollection(Collection collection, CheckinConflictFinder.CollectionClassifier classifier, int initialSize)
           
private static void findCADNameConflicts(Map projectToRefsMap, Map refToInitialCheckinDataMap, Map identityConflicts, int refMask)
           
(package private) static Map findCheckinIdentityConflicts(Map refToInitialCheckinDataMap, InitialCheckinDataApplicator applicator)
           
private static void findNumberingConflicts(Map classToReferencesMap, Map refToInitialCheckinDataMap, InitialCheckinDataApplicator applicator, Map identityConflicts, int refMask)
           
private static Map getAttrToRefsMap(Collection refColl, Map refToInitialCheckinDataMap, boolean attrIsCADname)
          Currently handles only CAD name and number right now (attrIsCADname is true for former, false for latter)
private static Map getClassToRefsMap(Collection refColl, Class[] classes)
           
private static Collection getExistingMastersWithCadNameConflicts(WTContainerRef projectRef, Collection refColl, Collection cadNameColl)
           
private static Collection getExistingMastersWithNumberConflicts(Class refClass, WTPrincipalReference orgRef, WTContainerRef namespaceRef, Collection refColl, Collection numberColl)
           
private static Map getNamespaceToRefsMap(Collection refColl, Map refToInitialCheckinDataMap)
           
private static Map getOrgRefToVersionRefsMap(Collection refColl, Map refToInitialCheckinDataMap, InitialCheckinDataApplicator applicator)
           
private static Map getProjectToRefsMap(Collection refColl, Map refToInitialCheckinDataMap)
           
private static void recordConflictsWithExisting(String attrName, Collection conflictingMastersColl, Map attrToRefsMap, Map identityConflicts, int refMask)
           
private static void recordNonUniqueEntries(Map attrToRefsMap, Map identityConflicts, int refMask)
           
private static void removeAutoNumberedRefsFromCollection(Collection refColl, Map refToInitialCheckinDataMap)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

BASE_CLASSES_HANDLED

private static final Class[] BASE_CLASSES_HANDLED

MASTER_CLASSES

private static final Class[] MASTER_CLASSES

KEY_CLASSES

private static final Class[] KEY_CLASSES
Constructor Detail

CheckinConflictFinder

CheckinConflictFinder()
Method Detail

findCheckinIdentityConflicts

static Map findCheckinIdentityConflicts(Map refToInitialCheckinDataMap,
                                        InitialCheckinDataApplicator applicator)
                                 throws WTException
Throws:
WTException

findNumberingConflicts

private static void findNumberingConflicts(Map classToReferencesMap,
                                           Map refToInitialCheckinDataMap,
                                           InitialCheckinDataApplicator applicator,
                                           Map identityConflicts,
                                           int refMask)
                                    throws WTException
Throws:
WTException

findCADNameConflicts

private static void findCADNameConflicts(Map projectToRefsMap,
                                         Map refToInitialCheckinDataMap,
                                         Map identityConflicts,
                                         int refMask)
                                  throws WTException
Throws:
WTException

recordNonUniqueEntries

private static void recordNonUniqueEntries(Map attrToRefsMap,
                                           Map identityConflicts,
                                           int refMask)

recordConflictsWithExisting

private static void recordConflictsWithExisting(String attrName,
                                                Collection conflictingMastersColl,
                                                Map attrToRefsMap,
                                                Map identityConflicts,
                                                int refMask)

allocateConflictSet

private static Set allocateConflictSet(int initialSize,
                                       int refMask)

getNamespaceToRefsMap

private static Map getNamespaceToRefsMap(Collection refColl,
                                         Map refToInitialCheckinDataMap)
                                  throws WTException
Throws:
WTException

getProjectToRefsMap

private static Map getProjectToRefsMap(Collection refColl,
                                       Map refToInitialCheckinDataMap)
                                throws WTException
Throws:
WTException

getOrgRefToVersionRefsMap

private static Map getOrgRefToVersionRefsMap(Collection refColl,
                                             Map refToInitialCheckinDataMap,
                                             InitialCheckinDataApplicator applicator)
                                      throws WTException
Throws:
WTException

getClassToRefsMap

private static Map getClassToRefsMap(Collection refColl,
                                     Class[] classes)
                              throws WTException
Throws:
WTException

getAttrToRefsMap

private static Map getAttrToRefsMap(Collection refColl,
                                    Map refToInitialCheckinDataMap,
                                    boolean attrIsCADname)
                             throws WTException
Currently handles only CAD name and number right now (attrIsCADname is true for former, false for latter)

Throws:
WTException

classifyCollection

private static Map classifyCollection(Collection collection,
                                      CheckinConflictFinder.CollectionClassifier classifier,
                                      int initialSize)
                               throws WTException
Throws:
WTException

removeAutoNumberedRefsFromCollection

private static void removeAutoNumberedRefsFromCollection(Collection refColl,
                                                         Map refToInitialCheckinDataMap)
                                                  throws WTException
Throws:
WTException

getExistingMastersWithNumberConflicts

private static Collection getExistingMastersWithNumberConflicts(Class refClass,
                                                                WTPrincipalReference orgRef,
                                                                WTContainerRef namespaceRef,
                                                                Collection refColl,
                                                                Collection numberColl)
                                                         throws WTException
Throws:
WTException

getExistingMastersWithCadNameConflicts

private static Collection getExistingMastersWithCadNameConflicts(WTContainerRef projectRef,
                                                                 Collection refColl,
                                                                 Collection cadNameColl)
                                                          throws WTException
Throws:
WTException