Package org.apache.ojb.broker

Examples of org.apache.ojb.broker.Identity


   */
  public void removeReader(TransactionImpl tx, Object obj)
  {
    try
    {
      LockEntry lock = new LockEntry(new Identity(obj,getBroker()).toString(), tx.getGUID());
            removeReaderRemote(lock);
    }
    catch (Throwable t)
    {
      log.error("Cannot remove LockEntry for object " + obj + " in transaction " + tx);
View Full Code Here


   */
  public boolean setWriter(TransactionImpl tx, Object obj)
  {
    try
    {
      LockEntry lock = new LockEntry(new Identity(obj,getBroker()).toString(),
          tx.getGUID(),
          System.currentTimeMillis(),
          LockStrategyFactory.getIsolationLevel(obj),
          LockEntry.LOCK_WRITE);

View Full Code Here

   */
  public boolean hasReadLock(TransactionImpl tx, Object obj)
  {
    try
    {
      LockEntry lock = new LockEntry(new Identity(obj,getBroker()).toString(), tx.getGUID());
      boolean result = hasReadLockRemote(lock);     
      return result;
    }
    catch (Throwable t)
    {
View Full Code Here

        }
        if (null != o)
        {
            try
            {
                Identity oid = m_conn.getIdentity(o);
                State state = m_conn.getEditingContext().lookupState(oid);
                /**
                 * if the object is PersistentClean or non transactional, evict it.
                 */
                if (State.PERSISTENT_CLEAN == state)
View Full Code Here

        {
            if(it == null) return;
            references = new HashMap();
            if(log.isDebugEnabled()) log.debug("Handle collection references");
            IdentityFactory idFac = listener.getBroker().serviceIdentity();
            Identity oid;
            Object obj;
            while(it.hasNext())
            {
                obj = it.next();
                oid = idFac.buildIdentity(obj);
                if(!hasTransientIdentity && oid.isTransient())
                {
                    hasTransientIdentity = true;
                }
                references.put(oid, obj);
            }
View Full Code Here

            {
                Iterator oldIter = oldRefs.references.entrySet().iterator();
                while(oldIter.hasNext())
                {
                    Map.Entry entry = (Map.Entry) oldIter.next();
                    Identity oldOid = (Identity) entry.getKey();
                    /*
                    search for deleted objects: if in the new image an object
                    from the old image is not contained, we found a deleted object
                    */
                    if(!isUnmaterializedProxy() && !containsReference(oldOid))
                    {
                        listener.deletedXToN(cod, entry.getValue(), oldOid);
                    }
                }
            }

            // find new reference objects
            if(references.size() > 0)
            {
                Iterator newIter = references.entrySet().iterator();
                while(newIter.hasNext())
                {
                    Map.Entry entry = (Map.Entry) newIter.next();
                    Identity newOid = (Identity) entry.getKey();
                    /*
                    search for added objects: if in the old image an object
                    from the new image is not contained, we found a added object
                    */
                    if(!oldRefs.containsReference(newOid))
View Full Code Here

            {
                hasTransientIdentity = false;
                // we need independent key list from Map
                List list = new ArrayList(references.keySet());
                IdentityFactory idFac = listener.getBroker().serviceIdentity();
                Identity oid, newOid;
                Object obj;
                for(int i = 0; i < list.size(); i++)
                {
                    oid = (Identity) list.get(i);
                    if(oid.isTransient())
                    {
                        obj = references.remove(oid);
                        newOid = idFac.buildIdentity(obj);
                        references.put(newOid, obj);
                        if(!hasTransientIdentity && oid.isTransient())
                        {
                            hasTransientIdentity = true;
                        }
                    }
                }
View Full Code Here

        {
            SingleRef oldRef = (SingleRef) oldImage;
            boolean isSame = getReferenceObjectOrProxy() == oldRef.getReferenceObjectOrProxy();
            if(!isSame)
            {
                Identity newOid = getIdentity();
                Identity oldOid = oldRef.getIdentity();
                if(newOid == null)
                {
                    if(oldOid != null)
                    {
                        listener.deletedOneToOne(ord, oldRef.getReferenceObjectOrProxy(), oldOid, true);
View Full Code Here

            if(!(this == toCompare))
            {
                if(toCompare instanceof Image.SingleRef)
                {
                    Image.SingleRef other = (Image.SingleRef) toCompare;
                    Identity current = getIdentity();
                    Identity otherOid = other.getIdentity();
                    modified = current != null ? !current.equals(otherOid) : !(otherOid == null);
                }
            }
            return modified;
        }
View Full Code Here

        return isolationLevel == IsolationLevels.IL_OPTIMISTIC || isolationLevel == IsolationLevels.IL_NONE;
    }

    public boolean readLock(TransactionImpl tx, Object obj)
    {
        Identity oid = tx.getBroker().serviceIdentity().buildIdentity(obj);
        return readLock(tx, oid, obj);
    }
View Full Code Here

TOP

Related Classes of org.apache.ojb.broker.Identity

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.