org.enhydra.shark.xpdl
Class XMLInterfaceForJDK13

java.lang.Object
  extended by org.enhydra.shark.xpdl.XMLInterfaceForJDK13
All Implemented Interfaces:
XMLInterface

public class XMLInterfaceForJDK13
extends java.lang.Object
implements XMLInterface

Implementation of XMLInterface that works with JDK1.3.

Author:
Sasa Bojanic

Field Summary
protected  java.util.Map idToPackages
           
protected  boolean isValidationON
           
protected  java.util.Locale locale
           
protected  java.lang.String mainPackageReference
           
protected  java.util.Map packageToParentDirectory
           
protected  java.util.Map parsingErrorMessages
           
protected  java.util.Map xmlFileToPackage
           
protected  XPDLRepositoryHandler xpdlRep
           
 
Constructor Summary
XMLInterfaceForJDK13()
           
 
Method Summary
 void clearParserErrorMessages()
           
 void closeAllPackages()
           
 java.util.List closePackages(java.lang.String pkgId)
           
 Package closePackageVersion(java.lang.String pkgId, java.lang.String pkgVer)
           
 boolean doesPackageFileExists(java.lang.String xmlFile)
           
 java.lang.String getAbsoluteFilePath(Package pkg)
           
 java.util.Collection getAllPackageFilenames()
           
 java.util.Collection getAllPackageIds()
           
 java.util.Collection getAllPackages()
           
 java.util.Collection getAllPackageVersions(java.lang.String pkgId)
           
 Package getExternalPackageByRelativeFilePath(java.lang.String relativePathToExtPkg, Package rootPkg)
           
 Package getPackageByFilename(java.lang.String filename)
           
 Package getPackageById(java.lang.String pkgId)
           
 Package getPackageByIdAndVersion(java.lang.String pkgId, java.lang.String version)
           
 java.lang.String getParentDirectory(Package pkg)
           
 java.util.Map getParsingErrorMessages()
          This method should be called immediatelly after opening a document, otherwise, messages could be invalid.
 XPDLRepositoryHandler getXPDLRepositoryHandler()
           
 boolean isPackageOpened(java.lang.String pkgId)
           
 Package openPackage(java.lang.String pkgReference, boolean handleExternalPackages)
           
 Package openPackageFromStream(byte[] pkgContent, boolean isFileStream)
          This implementation assumes that external package references have the similar name as Id of external package, i.e. if external package reference is ..
protected  Package openPackageRecursively(java.lang.String pkgReference, boolean handleExternalPackages)
           
 Package openPackagesFromStreams(java.util.List pkgContents, boolean isFileStream)
          Opens all the packages represented by their streams, and returns first of them.
 Package parseDocument(java.lang.String toParse, boolean isFile)
           
 void printDebug()
           
 void setLocale(java.util.Locale locale)
           
 void setValidation(boolean isActive)
           
 void setXPDLRepositoryHandler(XPDLRepositoryHandler newXPDLRep)
           
 void synchronizePackages(XMLInterface xmlInterface)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

idToPackages

protected java.util.Map idToPackages

xmlFileToPackage

protected java.util.Map xmlFileToPackage

packageToParentDirectory

protected java.util.Map packageToParentDirectory

mainPackageReference

protected java.lang.String mainPackageReference

parsingErrorMessages

protected java.util.Map parsingErrorMessages

isValidationON

protected boolean isValidationON

xpdlRep

protected XPDLRepositoryHandler xpdlRep

locale

protected java.util.Locale locale
Constructor Detail

XMLInterfaceForJDK13

public XMLInterfaceForJDK13()
Method Detail

setValidation

public void setValidation(boolean isActive)
Specified by:
setValidation in interface XMLInterface

clearParserErrorMessages

public void clearParserErrorMessages()
Specified by:
clearParserErrorMessages in interface XMLInterface

isPackageOpened

public boolean isPackageOpened(java.lang.String pkgId)
Specified by:
isPackageOpened in interface XMLInterface

getPackageById

public Package getPackageById(java.lang.String pkgId)
Specified by:
getPackageById in interface XMLInterface

getPackageByIdAndVersion

public Package getPackageByIdAndVersion(java.lang.String pkgId,
                                        java.lang.String version)
Specified by:
getPackageByIdAndVersion in interface XMLInterface

getPackageByFilename

public Package getPackageByFilename(java.lang.String filename)
Specified by:
getPackageByFilename in interface XMLInterface

getExternalPackageByRelativeFilePath

public Package getExternalPackageByRelativeFilePath(java.lang.String relativePathToExtPkg,
                                                    Package rootPkg)
Specified by:
getExternalPackageByRelativeFilePath in interface XMLInterface

getAbsoluteFilePath

public java.lang.String getAbsoluteFilePath(Package pkg)
Specified by:
getAbsoluteFilePath in interface XMLInterface

getAllPackages

public java.util.Collection getAllPackages()
Specified by:
getAllPackages in interface XMLInterface

getAllPackageIds

public java.util.Collection getAllPackageIds()
Specified by:
getAllPackageIds in interface XMLInterface

getAllPackageVersions

public java.util.Collection getAllPackageVersions(java.lang.String pkgId)
Specified by:
getAllPackageVersions in interface XMLInterface

getAllPackageFilenames

public java.util.Collection getAllPackageFilenames()
Specified by:
getAllPackageFilenames in interface XMLInterface

doesPackageFileExists

public boolean doesPackageFileExists(java.lang.String xmlFile)
Specified by:
doesPackageFileExists in interface XMLInterface

getParentDirectory

public java.lang.String getParentDirectory(Package pkg)
Specified by:
getParentDirectory in interface XMLInterface

openPackage

public Package openPackage(java.lang.String pkgReference,
                           boolean handleExternalPackages)
Specified by:
openPackage in interface XMLInterface

printDebug

public void printDebug()

openPackageRecursively

protected Package openPackageRecursively(java.lang.String pkgReference,
                                         boolean handleExternalPackages)

openPackagesFromStreams

public Package openPackagesFromStreams(java.util.List pkgContents,
                                       boolean isFileStream)
                                throws java.lang.Exception
Opens all the packages represented by their streams, and returns first of them. This implementation assumes that external package references have the similar name as Id of external package, i.e. if external package reference is ../tests/maintest/testPackage.xpdl, it is assumed that external package's Id is testPackage.

Specified by:
openPackagesFromStreams in interface XMLInterface
Throws:
java.lang.Exception

openPackageFromStream

public Package openPackageFromStream(byte[] pkgContent,
                                     boolean isFileStream)
                              throws java.lang.Exception
This implementation assumes that external package references have the similar name as Id of external package, i.e. if external package reference is ../tests/maintest/testPackage.xpdl, it is assumed that external package's Id is testPackage.

Specified by:
openPackageFromStream in interface XMLInterface
Throws:
java.lang.Exception

parseDocument

public Package parseDocument(java.lang.String toParse,
                             boolean isFile)
Specified by:
parseDocument in interface XMLInterface

getParsingErrorMessages

public java.util.Map getParsingErrorMessages()
This method should be called immediatelly after opening a document, otherwise, messages could be invalid.

Specified by:
getParsingErrorMessages in interface XMLInterface
Returns:
The map which keys are opened packages, and values are the sets of errors for corresponding package.

closePackages

public java.util.List closePackages(java.lang.String pkgId)
Specified by:
closePackages in interface XMLInterface

closePackageVersion

public Package closePackageVersion(java.lang.String pkgId,
                                   java.lang.String pkgVer)
Specified by:
closePackageVersion in interface XMLInterface

closeAllPackages

public void closeAllPackages()
Specified by:
closeAllPackages in interface XMLInterface

synchronizePackages

public void synchronizePackages(XMLInterface xmlInterface)
Specified by:
synchronizePackages in interface XMLInterface

getXPDLRepositoryHandler

public XPDLRepositoryHandler getXPDLRepositoryHandler()

setXPDLRepositoryHandler

public void setXPDLRepositoryHandler(XPDLRepositoryHandler newXPDLRep)

setLocale

public void setLocale(java.util.Locale locale)
Specified by:
setLocale in interface XMLInterface