org.castor.persist.resolver

Class ManyRelationResolver

public abstract class ManyRelationResolver extends Object implements ResolverStrategy

Implementation of ResolverStrategy for many relations. This class carries behaviour common to 1:M and M:N relations.

Since: 0.9.9

Author: Werner Guttmann

Field Summary
protected ClassMolder_classMolder
Associated ClassMolder.
protected FieldMolder_fieldMolder
Associated FieldMolder.
Constructor Summary
ManyRelationResolver(ClassMolder classMolder, FieldMolder fieldMolder, int fieldIndex, boolean debug)
Creates an instance of ManyRelationResolver
Method Summary
Objectcreate(TransactionContext tx, Object object)
voidexpireCache(TransactionContext tx, Object field)
voidload(TransactionContext tx, OID oid, ProposedEntity proposedObject, AccessMode suggestedAccessMode)
abstract booleanmarkCreate(TransactionContext tx, OID oid, Object object)
abstract voidmarkDelete(TransactionContext tx, Object object, Object field)
abstract ObjectpostCreate(TransactionContext tx, OID oid, Object object, Object field, Identity createdId)
abstract UpdateFlagspreStore(TransactionContext tx, OID oid, Object object, int timeout, Object field)
UpdateAndRemovedFlagsremoveRelation(TransactionContext tx, Object object, ClassMolder relatedMolder, Object relatedObject)
voidrevertObject(TransactionContext tx, OID oid, Object object, Object field)
Objectstore(TransactionContext tx, Object object, Object field)
abstract voidupdate(TransactionContext tx, OID oid, Object object, AccessMode suggestedAccessMode, Object field)
ObjectupdateCache(TransactionContext tx, OID oid, Object object)

Field Detail

_classMolder

protected ClassMolder _classMolder
Associated ClassMolder.

_fieldMolder

protected FieldMolder _fieldMolder
Associated FieldMolder.

Constructor Detail

ManyRelationResolver

public ManyRelationResolver(ClassMolder classMolder, FieldMolder fieldMolder, int fieldIndex, boolean debug)
Creates an instance of ManyRelationResolver

Parameters: classMolder Associated ClassMolder fieldMolder Associated FieldMolder fieldIndex Field index within all fields of parent class molder. debug ???

Method Detail

create

public final Object create(TransactionContext tx, Object object)

See Also: #create(org.castor.persist.TransactionContext, java.lang.Object)

expireCache

public final void expireCache(TransactionContext tx, Object field)

See Also: ResolverStrategy

load

public final void load(TransactionContext tx, OID oid, ProposedEntity proposedObject, AccessMode suggestedAccessMode)

See Also: ResolverStrategy

markCreate

public abstract boolean markCreate(TransactionContext tx, OID oid, Object object)

See Also: ResolverStrategy

markDelete

public abstract void markDelete(TransactionContext tx, Object object, Object field)

See Also: ResolverStrategy

postCreate

public abstract Object postCreate(TransactionContext tx, OID oid, Object object, Object field, Identity createdId)

See Also: ResolverStrategy

preStore

public abstract UpdateFlags preStore(TransactionContext tx, OID oid, Object object, int timeout, Object field)

See Also: ResolverStrategy

removeRelation

public final UpdateAndRemovedFlags removeRelation(TransactionContext tx, Object object, ClassMolder relatedMolder, Object relatedObject)

See Also: ResolverStrategy

revertObject

public final void revertObject(TransactionContext tx, OID oid, Object object, Object field)

See Also: ResolverStrategy

store

public final Object store(TransactionContext tx, Object object, Object field)

See Also: ResolverStrategy

update

public abstract void update(TransactionContext tx, OID oid, Object object, AccessMode suggestedAccessMode, Object field)

See Also: ResolverStrategy

updateCache

public final Object updateCache(TransactionContext tx, OID oid, Object object)

See Also: ResolverStrategy

Intalio Inc. (C) 1999-2006. All rights reserved http://www.intalio.com