Java Doc for ClientCacheDatabase.java in  » Database-DBMS » Ozone-1.1 » org » ozoneDB » Java Source Code / Java DocumentationJava Source Code and Java Documentation

Java Source Code / Java Documentation
1. 6.0 JDK Core
2. 6.0 JDK Modules
3. 6.0 JDK Modules com.sun
4. 6.0 JDK Modules com.sun.java
5. 6.0 JDK Modules sun
6. 6.0 JDK Platform
7. Ajax
8. Apache Harmony Java SE
9. Aspect oriented
10. Authentication Authorization
11. Blogger System
12. Build
13. Byte Code
14. Cache
15. Chart
16. Chat
17. Code Analyzer
18. Collaboration
19. Content Management System
20. Database Client
21. Database DBMS
22. Database JDBC Connection Pool
23. Database ORM
24. Development
25. EJB Server geronimo
26. EJB Server GlassFish
27. EJB Server JBoss 4.2.1
28. EJB Server resin 3.1.5
29. ERP CRM Financial
30. ESB
31. Forum
32. GIS
33. Graphic Library
34. Groupware
35. HTML Parser
36. IDE
37. IDE Eclipse
38. IDE Netbeans
39. Installer
40. Internationalization Localization
41. Inversion of Control
42. Issue Tracking
43. J2EE
44. JBoss
45. JMS
46. JMX
47. Library
48. Mail Clients
49. Net
50. Parser
51. PDF
52. Portal
53. Profiler
54. Project Management
55. Report
56. RSS RDF
57. Rule Engine
58. Science
59. Scripting
60. Search Engine
61. Security
62. Sevlet Container
63. Source Control
64. Swing Library
65. Template Engine
66. Test Coverage
67. Testing
68. UML
69. Web Crawler
70. Web Framework
71. Web Mail
72. Web Server
73. Web Services
74. Web Services apache cxf 2.0.1
75. Web Services AXIS2
76. Wiki Engine
77. Workflow Engines
78. XML
79. XML UI
Java
Java Tutorial
Java Open Source
Jar File Download
Java Articles
Java Products
Java by API
Photoshop Tutorials
Maya Tutorials
Flash Tutorials
3ds-Max Tutorials
Illustrator Tutorials
GIMP Tutorials
C# / C Sharp
C# / CSharp Tutorial
C# / CSharp Open Source
ASP.Net
ASP.NET Tutorial
JavaScript DHTML
JavaScript Tutorial
JavaScript Reference
HTML / CSS
HTML CSS Reference
C / ANSI-C
C Tutorial
C++
C++ Tutorial
Ruby
PHP
Python
Python Tutorial
Python Open Source
SQL Server / T-SQL
SQL Server / T-SQL Tutorial
Oracle PL / SQL
Oracle PL/SQL Tutorial
PostgreSQL
SQL / MySQL
MySQL Tutorial
VB.Net
VB.Net Tutorial
Flash / Flex / ActionScript
VBA / Excel / Access / Word
XML
XML Tutorial
Microsoft Office PowerPoint 2007 Tutorial
Microsoft Office Excel 2007 Tutorial
Microsoft Office Word 2007 Tutorial
Java Source Code / Java Documentation » Database DBMS » Ozone 1.1 » org.ozoneDB 
Source Cross Reference  Class Diagram Java Document (Java Doc) 


java.lang.Object
   org.ozoneDB.AbstractDatabase
      org.ozoneDB.ExternalDatabase
         org.ozoneDB.ClientCacheDatabase

ClientCacheDatabase
public class ClientCacheDatabase extends ExternalDatabase (Code)
This is an ExternalDatabase that implements a client side cache on top of another ExternalDatabase .

In contrast to LocalDatabase and RemoteDatabase which produce the exactly same results for the same code, this implementation of ExternalDatabase is not guaranteed to do so.

Note: The method parameters of type OzoneRemote are supposed to by proxy objects (of type OzoneProxy ). However, it's possible to pass a database objects (of type OzoneCompatible ). In this case the parameter should be substituted. Currently this is done by the invoke() method only.

Impl. Note: All interface methods are synchronized because they have to be executed as an atomar operation.
author:
   SMB
version:
   $Revision: 1.2 $Date: 2002/06/08 00:49:38 $
See Also:   OzoneInterface




Constructor Summary
public  ClientCacheDatabase(ExternalDatabase _delegate)
     Constructs a new ClientCacheDatabase with the given delegate as back-end.

Note: The size of the client side cache can be adjusted via the heap size of the VM (parameter -Xmx).

public  ClientCacheDatabase(ExternalDatabase _delegate, boolean _debug)
     Constructs a new ClientCacheDatabase with the given delegate as back-end and the given debug option.

Note: The size of the client side cache can be adjusted via the heap size of the VM (parameter -Xmx).


Method Summary
protected synchronized  voidabortCache()
     Throws away all modified containers.
public  voidbeginTX(AbstractTransaction tx)
    
protected  voidcalcMemory()
     Initialize the internal memory counter so that freeMemory() returns correct results.
public  voidcheckpointTX(AbstractTransaction tx)
    
public  voidclose()
    
public synchronized  voidcommitTX(AbstractTransaction tx, boolean onePhase)
    
public synchronized  OzoneProxycopyObject(OzoneRemote obj)
    
public synchronized  OzoneProxycreateObject(String className, int access, String name, String sig, Object[] args)
    
public  ExternalDatabasedelegate()
    
public synchronized  voiddeleteObject(OzoneRemote obj)
    
protected synchronized  voidensureSpace(long neededSpace)
     Try to free the specified amount of cache space.
public  OzoneCompatiblefetch(OzoneProxy proxy, int lockLevel)
    
protected  CacheObjectContainerfetch0(ObjectID id, int lockLevel)
     Fetch the object with the specified ObjectID from the server.
Parameters:
  proxy - The proxy that specifies the object to fetch.
protected synchronized  CacheObjectContainerfetchChunk(ObjectID rootID, int size)
    
protected  voidfinalize()
    
public  longfreeMemory()
     Return the amount of *total* free memory in the system.
public  Objectinvoke(OzoneProxy proxy, String methodName, String sig, Object[] args, int lockLevel)
    
public  Objectinvoke(OzoneProxy proxy, int methodIndex, Object[] args, int lockLevel)
    
public  booleanisOpen()
    
public  voidjoinTX(AbstractTransaction tx)
    
public  booleanleaveTX(AbstractTransaction tx)
    
public synchronized  voidnameObject(OzoneRemote obj, String name)
    
protected  DbClientnewConnection()
    
public  ExternalTransactionnewTransaction()
    
protected synchronized  ObjectIDnextID()
    
public synchronized  OzoneProxyobjectForName(String name)
    
public  OzoneProxy[]objectsOfClass(String name)
    
protected  voidopen(Hashtable _props)
    
public synchronized  voidprepareTX(AbstractTransaction tx)
    
public  voidreloadClasses()
     Force the database server to reload all classes which extend OzoneObject.
public synchronized  voidrollbackTX(AbstractTransaction tx)
    
protected  ObjectsendCommand(DbCommand command, boolean waitForResult, DbClient connection)
    
protected synchronized  voidsyncCache()
     Synchronize all changed objects with the server.
protected synchronized  voidupdateModTimes()
     Update the modification times of all currently modified containers.


Constructor Detail
ClientCacheDatabase
public ClientCacheDatabase(ExternalDatabase _delegate)(Code)
Constructs a new ClientCacheDatabase with the given delegate as back-end.

Note: The size of the client side cache can be adjusted via the heap size of the VM (parameter -Xmx). The cache uses all available heap in its VM.
Parameters:
  _delegate - The back-end database.




ClientCacheDatabase
public ClientCacheDatabase(ExternalDatabase _delegate, boolean _debug)(Code)
Constructs a new ClientCacheDatabase with the given delegate as back-end and the given debug option.

Note: The size of the client side cache can be adjusted via the heap size of the VM (parameter -Xmx). The cache uses all available heap in its VM.
Parameters:
  _delegate - The back-end database.
Parameters:
  _debug -





Method Detail
abortCache
protected synchronized void abortCache()(Code)
Throws away all modified containers. Clears idTable and nameTable.



beginTX
public void beginTX(AbstractTransaction tx) throws TransactionExc, IOException(Code)



calcMemory
protected void calcMemory()(Code)
Initialize the internal memory counter so that freeMemory() returns correct results.



checkpointTX
public void checkpointTX(AbstractTransaction tx) throws TransactionExc, IOException(Code)



close
public void close() throws Exception(Code)



commitTX
public synchronized void commitTX(AbstractTransaction tx, boolean onePhase) throws TransactionExc, IOException(Code)



copyObject
public synchronized OzoneProxy copyObject(OzoneRemote obj) throws Exception(Code)



createObject
public synchronized OzoneProxy createObject(String className, int access, String name, String sig, Object[] args) throws RuntimeException(Code)



delegate
public ExternalDatabase delegate()(Code)



deleteObject
public synchronized void deleteObject(OzoneRemote obj) throws RuntimeException(Code)



ensureSpace
protected synchronized void ensureSpace(long neededSpace)(Code)
Try to free the specified amount of cache space. This will remove containers from the cache that are currently not used by a transaction



fetch
public OzoneCompatible fetch(OzoneProxy proxy, int lockLevel) throws Exception(Code)



fetch0
protected CacheObjectContainer fetch0(ObjectID id, int lockLevel) throws Exception(Code)
Fetch the object with the specified ObjectID from the server.
Parameters:
  proxy - The proxy that specifies the object to fetch. The transaction for the current thread.



fetchChunk
protected synchronized CacheObjectContainer fetchChunk(ObjectID rootID, int size) throws Exception(Code)



finalize
protected void finalize() throws Throwable(Code)



freeMemory
public long freeMemory()(Code)
Return the amount of *total* free memory in the system. The results returned by Runtime.freeMemory() may change overtime and so its useless for ozone.

Note: this will not work properly if some kind of weal references are used in this VM. In case of empty space we need to force teh GC to also free weak references.




invoke
public Object invoke(OzoneProxy proxy, String methodName, String sig, Object[] args, int lockLevel) throws Exception(Code)



invoke
public Object invoke(OzoneProxy proxy, int methodIndex, Object[] args, int lockLevel) throws Exception(Code)



isOpen
public boolean isOpen() throws Exception(Code)



joinTX
public void joinTX(AbstractTransaction tx) throws TransactionExc(Code)



leaveTX
public boolean leaveTX(AbstractTransaction tx)(Code)



nameObject
public synchronized void nameObject(OzoneRemote obj, String name) throws Exception(Code)



newConnection
protected DbClient newConnection() throws Exception(Code)



newTransaction
public ExternalTransaction newTransaction()(Code)



nextID
protected synchronized ObjectID nextID() throws Exception(Code)



objectForName
public synchronized OzoneProxy objectForName(String name) throws Exception(Code)



objectsOfClass
public OzoneProxy[] objectsOfClass(String name) throws Exception(Code)



open
protected void open(Hashtable _props) throws Exception(Code)



prepareTX
public synchronized void prepareTX(AbstractTransaction tx) throws TransactionExc, IOException(Code)



reloadClasses
public void reloadClasses() throws Exception(Code)
Force the database server to reload all classes which extend OzoneObject. This is useful while testing new classes.



rollbackTX
public synchronized void rollbackTX(AbstractTransaction tx) throws TransactionExc, IOException(Code)



sendCommand
protected Object sendCommand(DbCommand command, boolean waitForResult, DbClient connection) throws Exception(Code)



syncCache
protected synchronized void syncCache() throws Exception(Code)
Synchronize all changed objects with the server. This does not commits the transaction but only transfers all changed objects back to the server.



updateModTimes
protected synchronized void updateModTimes()(Code)
Update the modification times of all currently modified containers. This method should be called after prepareTX only.



Fields inherited from org.ozoneDB.ExternalDatabase
final public static String PROP_DEBUG(Code)(Java Doc)
final public static String PROP_DIR(Code)(Java Doc)
final public static String PROP_HOST(Code)(Java Doc)
final public static String PROP_PASSWD(Code)(Java Doc)
final public static String PROP_PORT(Code)(Java Doc)
final public static String PROP_USER(Code)(Java Doc)

Methods inherited from org.ozoneDB.ExternalDatabase
final protected DbClient acquirePooledConnection() throws Exception(Code)(Java Doc)
public Admin admin() throws Exception(Code)(Java Doc)
public void beginTX(AbstractTransaction tx) throws TransactionExc, IOException(Code)(Java Doc)
public void checkpointTX(AbstractTransaction tx) throws TransactionExc, IOException(Code)(Java Doc)
public synchronized void close() throws Exception(Code)(Java Doc)
final protected Object commandTX(AbstractTransaction tx, DbTransaction command) throws TransactionExc, IOException(Code)(Java Doc)
public void commitTX(AbstractTransaction tx, boolean onePhase) throws TransactionExc, IOException(Code)(Java Doc)
public OzoneProxy copyObject(OzoneRemote obj) throws Exception(Code)(Java Doc)
public OzoneProxy createObject(String className, int access, String name, String sig, Object[] args) throws RuntimeException, ExceptionInOzoneObjectException(Code)(Java Doc)
protected static Hashtable createProps(String _url) throws MalformedURLException(Code)(Java Doc)
public ExternalTransaction currentExternalTransaction()(Code)(Java Doc)
public AbstractTransaction currentTransaction()(Code)(Java Doc)
public void deleteObject(OzoneRemote obj) throws RuntimeException, ExceptionInOzoneObjectException(Code)(Java Doc)
public OzoneCompatible fetch(OzoneProxy rObj, int lockLevel) throws Exception(Code)(Java Doc)
protected void finalize() throws Throwable(Code)(Java Doc)
public static ExternalDatabase forThread(Thread _thread)(Code)(Java Doc)
final public int getStatusTX(AbstractTransaction tx) throws TransactionExc, IOException(Code)(Java Doc)
final public XAResource getXAResource()(Code)(Java Doc)
public Object invoke(OzoneProxy rObj, String methodName, String sig, Object[] args, int lockLevel) throws Exception(Code)(Java Doc)
public Object invoke(OzoneProxy rObj, int methodIndex, Object[] args, int lockLevel) throws Exception(Code)(Java Doc)
public boolean isOpen() throws Exception(Code)(Java Doc)
public void joinTX(AbstractTransaction tx) throws TransactionExc(Code)(Java Doc)
public boolean leaveTX(AbstractTransaction tx)(Code)(Java Doc)
protected ExternalDatabase linkForProxy(OzoneProxy proxy)(Code)(Java Doc)
public void nameObject(OzoneRemote obj, String name) throws Exception(Code)(Java Doc)
abstract protected DbClient newConnection() throws Exception(Code)(Java Doc)
public ExternalTransaction newTransaction()(Code)(Java Doc)
public void notifyProxyDeath(OzoneProxy proxy)(Code)(Java Doc)
public OzoneProxy objectForHandle(String handle) throws Exception(Code)(Java Doc)
public OzoneProxy objectForName(String name) throws Exception(Code)(Java Doc)
public OzoneProxy[] objectsOfClass(String name) throws Exception(Code)(Java Doc)
protected void open(Hashtable _props) throws Exception(Code)(Java Doc)
public static ExternalDatabase openDatabase(String _url, String _username, String _passwd) throws Exception(Code)(Java Doc)
public static ExternalDatabase openDatabase(String _url) throws Exception(Code)(Java Doc)
public void prepareTX(AbstractTransaction tx) throws TransactionExc, IOException(Code)(Java Doc)
final protected void releasePooledConnection(DbClient connection)(Code)(Java Doc)
public void reloadClasses() throws Exception(Code)(Java Doc)
public void rollbackTX(AbstractTransaction tx) throws TransactionExc, IOException(Code)(Java Doc)
final protected Object sendCommand(DbCommand command, boolean waitForResult) throws Exception(Code)(Java Doc)
protected Object sendCommand(DbCommand command, boolean waitForResult, DbClient connection) throws Exception, ExceptionInOzoneObjectException(Code)(Java Doc)
protected synchronized void setWrapper(ExternalDatabase _wrapper)(Code)(Java Doc)
final protected AbstractTransaction txForThread(Thread thread)(Code)(Java Doc)
public Node xmlForObject(OzoneRemote rObj, Document domFactory) throws Exception(Code)(Java Doc)
public void xmlForObject(OzoneRemote rObj, ContentHandler ch) throws Exception(Code)(Java Doc)

Fields inherited from org.ozoneDB.AbstractDatabase
final public static int DefaultAccessRight(Code)(Java Doc)

Methods inherited from org.ozoneDB.AbstractDatabase
public OzoneProxy createObject(String className) throws RuntimeException(Code)(Java Doc)
public OzoneProxy createObject(String className, int access) throws RuntimeException(Code)(Java Doc)
public OzoneProxy createObject(String className, int access, String objName) throws RuntimeException(Code)(Java Doc)
public OzoneProxy createObject(String className, String sig, Object[] args) throws RuntimeException(Code)(Java Doc)
public OzoneProxy createObject(Class type) throws RuntimeException(Code)(Java Doc)
public OzoneProxy createObject(Class type, int access) throws RuntimeException(Code)(Java Doc)
public OzoneProxy createObject(Class type, int access, String objName) throws RuntimeException(Code)(Java Doc)
public OzoneProxy createObject(Class type, int access, String objName, String sig, Object[] args) throws RuntimeException(Code)(Java Doc)
public OzoneProxy createObject(Class type, String sig, Object[] args) throws RuntimeException(Code)(Java Doc)

Methods inherited from java.lang.Object
native protected Object clone() throws CloneNotSupportedException(Code)(Java Doc)
public boolean equals(Object obj)(Code)(Java Doc)
protected void finalize() throws Throwable(Code)(Java Doc)
final native public Class getClass()(Code)(Java Doc)
native public int hashCode()(Code)(Java Doc)
final native public void notify()(Code)(Java Doc)
final native public void notifyAll()(Code)(Java Doc)
public String toString()(Code)(Java Doc)
final native public void wait(long timeout) throws InterruptedException(Code)(Java Doc)
final public void wait(long timeout, int nanos) throws InterruptedException(Code)(Java Doc)
final public void wait() throws InterruptedException(Code)(Java Doc)

www.java2java.com | Contact Us
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.