com.sleepycat.persist.impl
Class ReadOnlyCatalog

java.lang.Object
  extended by com.sleepycat.persist.impl.ReadOnlyCatalog
All Implemented Interfaces:
Catalog

 class ReadOnlyCatalog
extends Object
implements Catalog

Read-only catalog operations used when initializing new formats. This catalog is used temprarily when the main catalog has not been updated yet, but the new formats need to do catalog lookups.

Author:
Mark Hayes
See Also:
PersistCatalog.addNewFormat(java.lang.Class)

Field Summary
 
Fields inherited from interface com.sleepycat.persist.impl.Catalog
BETA_VERSION, CURRENT_VERSION
 
Constructor Summary
ReadOnlyCatalog(ClassLoader classLoader, List<Format> formatList, Map<String,Format> formatMap)
           
 
Method Summary
 Object convertRawObject(RawObject o, IdentityHashMap converted)
           
 Format createFormat(Class type, Map<String,Format> newFormats)
           
 Format createFormat(String clsName, Map<String,Format> newFormats)
           
 Format getFormat(Class cls, boolean checkEntitySubclassIndexes)
          Returns a format for a given class, or throws an exception.
 Format getFormat(int formatId, boolean expectStored)
          Returns a format for a given ID, or throws an exception.
 Format getFormat(String className)
          Returns a format by class name.
 int getInitVersion(Format format, boolean forReader)
          See above.
 boolean isRawAccess()
           
 Class resolveClass(String clsName)
           
 Class resolveKeyClass(String clsName)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ReadOnlyCatalog

ReadOnlyCatalog(ClassLoader classLoader,
                List<Format> formatList,
                Map<String,Format> formatMap)
Method Detail

getInitVersion

public int getInitVersion(Format format,
                          boolean forReader)
Description copied from interface: Catalog
See above.

Specified by:
getInitVersion in interface Catalog

getFormat

public Format getFormat(int formatId,
                        boolean expectStored)
Description copied from interface: Catalog
Returns a format for a given ID, or throws an exception. This method is used when reading an object from the byte array format.

Specified by:
getFormat in interface Catalog
expectStored - is true if reading a record from a database, and therefore the format ID is expected to be stored also. If the format ID is not stored, a RefreshException is thrown.

getFormat

public Format getFormat(Class cls,
                        boolean checkEntitySubclassIndexes)
Description copied from interface: Catalog
Returns a format for a given class, or throws an exception. This method is used when writing an object that was passed in by the user.

Specified by:
getFormat in interface Catalog
checkEntitySubclassIndexes - is true if we're expecting this format to be an entity subclass and therefore subclass secondary indexes should be opened.

getFormat

public Format getFormat(String className)
Description copied from interface: Catalog
Returns a format by class name. Unlike #getFormat(Class), the format will not be created if it is not already known.

Specified by:
getFormat in interface Catalog

createFormat

public Format createFormat(String clsName,
                           Map<String,Format> newFormats)
Specified by:
createFormat in interface Catalog
See Also:
PersistCatalog.createFormat(java.lang.String, java.util.Map)

createFormat

public Format createFormat(Class type,
                           Map<String,Format> newFormats)
Specified by:
createFormat in interface Catalog
See Also:
PersistCatalog.createFormat(java.lang.String, java.util.Map)

isRawAccess

public boolean isRawAccess()
Specified by:
isRawAccess in interface Catalog
See Also:
PersistCatalog.isRawAccess()

convertRawObject

public Object convertRawObject(RawObject o,
                               IdentityHashMap converted)
Specified by:
convertRawObject in interface Catalog
See Also:
PersistCatalog.convertRawObject(com.sleepycat.persist.raw.RawObject, com.sleepycat.je.utilint.IdentityHashMap)

resolveClass

public Class resolveClass(String clsName)
                   throws ClassNotFoundException
Specified by:
resolveClass in interface Catalog
Throws:
ClassNotFoundException
See Also:
PersistCatalog.resolveClass(java.lang.String)

resolveKeyClass

public Class resolveKeyClass(String clsName)
Specified by:
resolveKeyClass in interface Catalog
See Also:
PersistCatalog.resolveKeyClass(java.lang.String)


Copyright (c) 2004-2012 Oracle. All rights reserved.