All Downloads are FREE. Search and download functionalities are using the official Maven repository.

klass.model.meta.domain.MemberReferencePathAssociationEndMappingFinder Maven / Gradle / Ivy

The newest version!
package klass.model.meta.domain;
import java.math.BigDecimal;
import java.sql.Timestamp;
import java.util.*;
import java.io.*;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import com.gs.fw.common.mithra.*;
import com.gs.fw.common.mithra.attribute.*;
import com.gs.fw.common.mithra.util.*;
import com.gs.fw.common.mithra.notification.*;
import com.gs.fw.common.mithra.notification.listener.*;
import com.gs.fw.common.mithra.list.cursor.Cursor;
import com.gs.fw.common.mithra.bulkloader.*;
import com.gs.fw.common.mithra.*;
import com.gs.fw.common.mithra.attribute.*;
import com.gs.fw.common.mithra.attribute.calculator.procedure.ObjectProcedure;
import com.gs.fw.common.mithra.behavior.txparticipation.*;
import com.gs.fw.common.mithra.cache.Cache;
import com.gs.fw.common.mithra.cache.bean.*;
import com.gs.fw.common.mithra.extractor.*;
import com.gs.fw.common.mithra.finder.*;
import com.gs.fw.common.mithra.finder.booleanop.*;
import com.gs.fw.common.mithra.finder.integer.*;
import com.gs.fw.common.mithra.finder.longop.*;
import com.gs.fw.common.mithra.finder.orderby.OrderBy;
import com.gs.fw.common.mithra.finder.string.*;
import com.gs.fw.common.mithra.extractor.NormalAndListValueSelector;
import com.gs.fw.common.mithra.list.NulledRelation;
import com.gs.fw.common.mithra.querycache.CachedQuery;
import com.gs.fw.common.mithra.querycache.QueryCache;
import com.gs.fw.common.mithra.portal.*;
import com.gs.fw.common.mithra.remote.*;
import com.gs.fw.common.mithra.transaction.MithraObjectPersister;
import com.gs.fw.common.mithra.util.TimestampPool;
import org.eclipse.collections.impl.map.mutable.UnifiedMap;
import java.io.Serializable;
/**
* This file was automatically generated using Mithra 18.0.0. Please do not modify it.
* Add custom logic to its subclass instead.
*/
public class MemberReferencePathAssociationEndMappingFinder
{
	private static final String IMPL_CLASS_NAME_WITH_SLASHES = "klass/model/meta/domain/MemberReferencePathAssociationEndMapping";
	private static final String BUSINESS_CLASS_NAME_WITH_DOTS = "klass.model.meta.domain.MemberReferencePathAssociationEndMapping";
	private static final FinderMethodMap finderMethodMap;
	private static boolean isFullCache;
	private static boolean isOffHeap;
	private static volatile MithraObjectPortal objectPortal = new UninitializedPortal("klass.model.meta.domain.MemberReferencePathAssociationEndMapping");
	private static final MemberReferencePathAssociationEndMappingSingleFinder finder = new MemberReferencePathAssociationEndMappingSingleFinder();
	private static ConstantStringSet[] constantStringSets = new ConstantStringSet[0];
	private static ConstantIntSet[] constantIntSets = new ConstantIntSet[0];
	private static ConstantShortSet[] constantShortSets = new ConstantShortSet[0];
	static
	{
		finderMethodMap = new FinderMethodMap(MemberReferencePathAssociationEndMappingFinder.MemberReferencePathAssociationEndMappingRelatedFinder.class);
		finderMethodMap.addNormalAttributeName("memberReferencePathId");
		finderMethodMap.addNormalAttributeName("associationOwningClassName");
		finderMethodMap.addNormalAttributeName("associationEndName");
		finderMethodMap.addNormalAttributeName("ordinal");
		finderMethodMap.addRelationshipName("associationEnd");
		finderMethodMap.addRelationshipName("memberReferencePath");
	}

	public static Attribute[] allPersistentAttributes()
	{
		return finder.getPersistentAttributes();
	}

	public static List allRelatedFinders()
	{
		return finder.getRelationshipFinders();
	}

	public static List allDependentRelatedFinders()
	{
		return finder.getDependentRelationshipFinders();
	}

	public static ConstantStringSet zGetConstantStringSet(int index)
	{
		return constantStringSets[index];
	}

	public static ConstantIntSet zGetConstantIntSet(int index)
	{
		return constantIntSets[index];
	}

	public static ConstantShortSet zGetConstantShortSet(int index)
	{
		return constantShortSets[index];
	}

	public static Mapper zGetConstantJoin(int index)
	{
		return getConstantJoinPool()[index];
	}

	private static Mapper[] constantJoinPool;
	private static Mapper[] getConstantJoinPool()
	{
		if (constantJoinPool == null)
		{
			Mapper[] result = new Mapper[4];
			result[0] = MemberReferencePathAssociationEndMappingFinder.associationOwningClassName().constructEqualityMapper(AssociationEndFinder.owningClassName());
			result[1] = AssociationEndFinder.owningClassName().constructEqualityMapper(MemberReferencePathAssociationEndMappingFinder.associationOwningClassName());
			result[2] = MemberReferencePathAssociationEndMappingFinder.associationEndName().constructEqualityMapper(AssociationEndFinder.name());
			result[3] = AssociationEndFinder.name().constructEqualityMapper(MemberReferencePathAssociationEndMappingFinder.associationEndName());
			constantJoinPool = result;
		}

		return constantJoinPool;
	}

	public static SourceAttributeType getSourceAttributeType()
	{
		return null;
	}

	public static MemberReferencePathAssociationEndMapping findOne(com.gs.fw.finder.Operation operation)
	{
		return findOne(operation, false);
	}

	public static MemberReferencePathAssociationEndMapping findOneBypassCache(com.gs.fw.finder.Operation operation)
	{
		return findOne(operation, true);
	}

	public static MemberReferencePathAssociationEndMappingList findMany(com.gs.fw.finder.Operation operation)
	{
		return (MemberReferencePathAssociationEndMappingList) finder.findMany(operation);
	}

	public static MemberReferencePathAssociationEndMappingList findManyBypassCache(com.gs.fw.finder.Operation operation)
	{
		return (MemberReferencePathAssociationEndMappingList) finder.findManyBypassCache(operation);
	}

	private static MemberReferencePathAssociationEndMapping findOne(com.gs.fw.finder.Operation operation, boolean bypassCache)
	{
		List found = getMithraObjectPortal().find((Operation) operation, bypassCache);
		return (MemberReferencePathAssociationEndMapping) FinderUtils.findOne(found);
	}

	public static MemberReferencePathAssociationEndMapping findByPrimaryKey(long memberReferencePathId, String associationOwningClassName, String associationEndName)
	{
		return finder.findByPrimaryKey(memberReferencePathId, associationOwningClassName, associationEndName);
	}

	private static final RelationshipHashStrategy forPrimaryKey = new PrimaryKeyRhs();
	private static final class PrimaryKeyRhs implements RelationshipHashStrategy
	{
		public boolean equalsForRelationship(Object _srcObject, Object _srcData, Object _targetData, Timestamp _asOfDate0, Timestamp _asOfDate1)
		{
			I3O3L3 _bean = (I3O3L3) _srcData;
			MemberReferencePathAssociationEndMappingData _castedTargetData = (MemberReferencePathAssociationEndMappingData) _targetData;
			if (_bean.getL1AsLong() == _castedTargetData.getMemberReferencePathId() && _bean.getO1AsString().equals(_castedTargetData.getAssociationOwningClassName()) && _bean.getO2AsString().equals(_castedTargetData.getAssociationEndName()))
			{
				return true;
			}

			return false;
		}

		public int computeHashCodeFromRelated(Object _srcObject, Object _srcData)
		{
			I3O3L3 _bean = (I3O3L3) _srcData;
			return HashUtil.combineHashes(HashUtil.combineHashes(HashUtil.hash(_bean.getL1AsLong()),HashUtil.hash(_bean.getO1AsString())),HashUtil.hash(_bean.getO2AsString()));
		}

		public int computeOffHeapHashCodeFromRelated(Object _srcObject, Object _srcData)
		{
			I3O3L3 _bean = (I3O3L3) _srcData;
			return HashUtil.combineHashes(HashUtil.combineHashes(HashUtil.hash(_bean.getL1AsLong()),HashUtil.offHeapHash(_bean.getO1AsString())),HashUtil.offHeapHash(_bean.getO2AsString()));
		}
	}

	public static MemberReferencePathAssociationEndMapping zFindOneForRelationship(Operation operation)
	{
		List found = getMithraObjectPortal().findAsCachedQuery(operation, null, false, true, 0).getResult();
		return (MemberReferencePathAssociationEndMapping) FinderUtils.findOne(found);
	}

	public static MithraObjectPortal getMithraObjectPortal()
	{
		return objectPortal.getInitializedPortal();
	}

	public static void clearQueryCache()
	{
		objectPortal.clearQueryCache();
	}

	public static void reloadCache()
	{
		objectPortal.reloadCache();
	}

	public static class MemberReferencePathAssociationEndMappingRelatedFinder extends AbstractRelatedFinder
	{
		private List relationshipFinders;
		private List dependentRelationshipFinders;
		private LongAttribute memberReferencePathId;
		private StringAttribute associationOwningClassName;
		private StringAttribute associationEndName;
		private IntegerAttribute ordinal;
		private MemberReferencePathAssociationEndMappingAssociationEndFinderSubclass associationEnd;
		private MemberReferencePathAssociationEndMappingMemberReferencePathFinderSubclass memberReferencePath;
		public MemberReferencePathAssociationEndMappingRelatedFinder()
		{
			super();
		}

		public MemberReferencePathAssociationEndMappingRelatedFinder(Mapper mapper)
		{
			super(mapper);
		}

		public String getFinderClassName()
		{
			return "klass.model.meta.domain.MemberReferencePathAssociationEndMappingFinder";
		}

		public RelatedFinder getRelationshipFinderByName(String relationshipName)
		{
			return MemberReferencePathAssociationEndMappingFinder.finderMethodMap.getRelationshipFinderByName(relationshipName, this);
		}

		public Attribute getAttributeByName(String attributeName)
		{
			return MemberReferencePathAssociationEndMappingFinder.finderMethodMap.getAttributeByName(attributeName, this);
		}

		public com.gs.fw.common.mithra.extractor.Function getAttributeOrRelationshipSelector(String attributeName)
		{
			return MemberReferencePathAssociationEndMappingFinder.finderMethodMap.getAttributeOrRelationshipSelectorFunction(attributeName, this);
		}

		public Attribute[] getPersistentAttributes()
		{
			Attribute[] attributes = new Attribute[4];
			attributes[0] = this.memberReferencePathId();
			attributes[1] = this.associationOwningClassName();
			attributes[2] = this.associationEndName();
			attributes[3] = this.ordinal();
			return attributes;
		}

		public List getRelationshipFinders()
		{
			if (relationshipFinders == null)
			{
				List relatedFinders = new ArrayList(2);
				relatedFinders.add(this.associationEnd());
				relatedFinders.add(this.memberReferencePath());
				relationshipFinders = Collections.unmodifiableList(relatedFinders);
			}

			return relationshipFinders;
		}

		public List getDependentRelationshipFinders()
		{
			if (dependentRelationshipFinders == null)
			{
				List dependentRelatedFinders = new ArrayList(0);
				dependentRelationshipFinders = Collections.unmodifiableList(dependentRelatedFinders);
			}

			return dependentRelationshipFinders;
		}

		public MemberReferencePathAssociationEndMapping findOne(com.gs.fw.finder.Operation operation)
		{
			return MemberReferencePathAssociationEndMappingFinder.findOne(operation, false);
		}

		public MemberReferencePathAssociationEndMapping findOneBypassCache(com.gs.fw.finder.Operation operation)
		{
			return MemberReferencePathAssociationEndMappingFinder.findOne(operation, true);
		}

		public MithraList findMany(com.gs.fw.finder.Operation operation)
		{
			return new MemberReferencePathAssociationEndMappingList((Operation) operation);
		}

		public MithraList findManyBypassCache(com.gs.fw.finder.Operation operation)
		{
			MemberReferencePathAssociationEndMappingList result = (MemberReferencePathAssociationEndMappingList) this.findMany(operation);
			result.setBypassCache(true);
			return result;
		}

		public MithraList constructEmptyList()
		{
			return new MemberReferencePathAssociationEndMappingList();
		}

		public int getSerialVersionId()
		{
			return -30732450;
		}

		public boolean isPure()
		{
			return false;
		}

		public boolean isTemporary()
		{
			return false;
		}

		public int getHierarchyDepth()
		{
			return 0;
		}

		public LongAttribute memberReferencePathId()
		{
			LongAttribute result = this.memberReferencePathId;
			if (result == null)
			{
				result = mapper == null ? SingleColumnLongAttribute.generate("\"MEMBER_REFERENCE_PATH_ID\"","","memberReferencePathId",BUSINESS_CLASS_NAME_WITH_DOTS,IMPL_CLASS_NAME_WITH_SLASHES,false,false,this,null,true,false,false,-1,-1,-1,false, false) :
					new MappedLongAttribute(MemberReferencePathAssociationEndMappingFinder.memberReferencePathId(), this.mapper, this.zGetValueSelector());
				result.zSetOwningRelationship("memberReferencePath");
				result.zSetOwningReverseRelationship("klass.model.meta.domain", "MemberReferencePath", "associationEnds");
				this.memberReferencePathId = result;
			}

			return result;
		}

		public StringAttribute associationOwningClassName()
		{
			StringAttribute result = this.associationOwningClassName;
			if (result == null)
			{
				result = mapper == null ? SingleColumnStringAttribute.generate("\"ASSOCIATION_OWNING_CLASS_NAME\"","","associationOwningClassName",BUSINESS_CLASS_NAME_WITH_DOTS,IMPL_CLASS_NAME_WITH_SLASHES,false,false,this,null,true,false,-1,-1,-1,256,false, false) :
					new MappedStringAttribute(MemberReferencePathAssociationEndMappingFinder.associationOwningClassName(), this.mapper, this.zGetValueSelector());
				result.zSetOwningRelationship("associationEnd");
				result.zSetOwningReverseRelationship("klass.model.meta.domain", "AssociationEnd", "memberReferencePaths");
				this.associationOwningClassName = result;
			}

			return result;
		}

		public StringAttribute associationEndName()
		{
			StringAttribute result = this.associationEndName;
			if (result == null)
			{
				result = mapper == null ? SingleColumnStringAttribute.generate("\"ASSOCIATION_END_NAME\"","","associationEndName",BUSINESS_CLASS_NAME_WITH_DOTS,IMPL_CLASS_NAME_WITH_SLASHES,false,false,this,null,true,false,-1,-1,-1,256,false, false) :
					new MappedStringAttribute(MemberReferencePathAssociationEndMappingFinder.associationEndName(), this.mapper, this.zGetValueSelector());
				result.zSetOwningRelationship("associationEnd");
				result.zSetOwningReverseRelationship("klass.model.meta.domain", "AssociationEnd", "memberReferencePaths");
				this.associationEndName = result;
			}

			return result;
		}

		public IntegerAttribute ordinal()
		{
			IntegerAttribute result = this.ordinal;
			if (result == null)
			{
				result = mapper == null ? SingleColumnIntegerAttribute.generate("\"ORDINAL\"","","ordinal",BUSINESS_CLASS_NAME_WITH_DOTS,IMPL_CLASS_NAME_WITH_SLASHES,false,false,this,null,true,false,false,-1,-1,-1,false, false) :
					new MappedIntegerAttribute(MemberReferencePathAssociationEndMappingFinder.ordinal(), this.mapper, this.zGetValueSelector());
				this.ordinal = result;
			}

			return result;
		}

		public AssociationEndFinder.AssociationEndSingleFinderForRelatedClasses associationEnd()
		{
			MemberReferencePathAssociationEndMappingAssociationEndFinderSubclass result = this.associationEnd;
			if (result == null)
			{
				Mapper newMapper = combineWithMapperIfExists(MemberReferencePathAssociationEndMappingFinder.zGetMemberReferencePathAssociationEndMappingAssociationEndReverseMapper());
				newMapper.setToMany(false);
				result = new MemberReferencePathAssociationEndMappingAssociationEndFinderSubclass(newMapper , this.zGetValueSelector() );
				this.associationEnd = result;
			}

			return result;
		}

		public MemberReferencePathFinder.MemberReferencePathSingleFinderForRelatedClasses memberReferencePath()
		{
			MemberReferencePathAssociationEndMappingMemberReferencePathFinderSubclass result = this.memberReferencePath;
			if (result == null)
			{
				Mapper newMapper = combineWithMapperIfExists(MemberReferencePathFinder.zGetMemberReferencePathAssociationEndsMapper());
				newMapper.setToMany(false);
				result = new MemberReferencePathAssociationEndMappingMemberReferencePathFinderSubclass(newMapper , this.zGetValueSelector() );
				this.memberReferencePath = result;
			}

			return result;
		}

		public Attribute getSourceAttribute()
		{
			return null;
		}

		private Mapper combineWithMapperIfExists(Mapper newMapper)
		{
			if (this.mapper != null)
			{
				return new LinkedMapper(this.mapper, newMapper);
			}

			return newMapper;
		}

		public Attribute[] getPrimaryKeyAttributes()
		{
			return MemberReferencePathAssociationEndMappingFinder.getPrimaryKeyAttributes();
		}

		public VersionAttribute getVersionAttribute()
		{
			return null;
		}

		public MithraObjectPortal getMithraObjectPortal()
		{
			return MemberReferencePathAssociationEndMappingFinder.getMithraObjectPortal();
		}
	}

	public static class MemberReferencePathAssociationEndMappingCollectionFinder extends MemberReferencePathAssociationEndMappingRelatedFinder
	{
		public MemberReferencePathAssociationEndMappingCollectionFinder(Mapper mapper)
		{
			super(mapper);
		}
	}

	public static abstract class MemberReferencePathAssociationEndMappingCollectionFinderForRelatedClasses
	extends MemberReferencePathAssociationEndMappingCollectionFinder
	implements DeepRelationshipAttribute
	{
		public MemberReferencePathAssociationEndMappingCollectionFinderForRelatedClasses(Mapper mapper)
		{
			super(mapper);
		}

		protected NormalAndListValueSelector zGetValueSelector()
		{
			return this;
		}
	}

	public static class MemberReferencePathAssociationEndMappingSingleFinder extends MemberReferencePathAssociationEndMappingRelatedFinder
	implements ToOneFinder
	{
		public MemberReferencePathAssociationEndMappingSingleFinder(Mapper mapper)
		{
			super(mapper);
		}

		public MemberReferencePathAssociationEndMappingSingleFinder()
		{
			super(null);
		}

		public Operation eq(MemberReferencePathAssociationEndMapping other)
		{
			return this.memberReferencePathId().eq(other.getMemberReferencePathId())
			.and(this.associationOwningClassName().eq(other.getAssociationOwningClassName()))
			.and(this.associationEndName().eq(other.getAssociationEndName()))
			;
		}
		// this implementation uses private API. Do NOT copy to application code. Application code must use normal operations for lookups.
		public MemberReferencePathAssociationEndMapping findByPrimaryKey(long memberReferencePathId, String associationOwningClassName, String associationEndName)
		{
			MemberReferencePathAssociationEndMapping _result = null;
			Operation _op = null;
			Object _related = null;
			if (associationOwningClassName != null && associationEndName != null)
			{
				I3O3L3 _bean = I3O3L3.POOL.getOrConstruct();
				_bean.setL1AsLong(memberReferencePathId);
				_bean.setO1(associationOwningClassName);
				_bean.setO2(associationEndName);
				MithraObjectPortal _portal = this.getMithraObjectPortal();
				_related = _portal.getAsOneFromCacheForFind(_bean, _bean, forPrimaryKey, null, null);
				_bean.release();
			}

			if (!(_related instanceof NulledRelation)) _result = (MemberReferencePathAssociationEndMapping) _related;
			if (_related == null)
			{
				_op = this.memberReferencePathId().eq(memberReferencePathId).and(this.associationOwningClassName().eq(associationOwningClassName)).and(this.associationEndName().eq(associationEndName));
			}

			if (_op != null)
			{
				_result = this.findOne(_op);
			}

			return _result;
		}
	}

	public static abstract class MemberReferencePathAssociationEndMappingSingleFinderForRelatedClasses extends MemberReferencePathAssociationEndMappingSingleFinder implements DeepRelationshipAttribute
	{
		public MemberReferencePathAssociationEndMappingSingleFinderForRelatedClasses(Mapper mapper)
		{
			super(mapper);
		}

		protected NormalAndListValueSelector zGetValueSelector()
		{
			return this;
		}
	}

	private static Mapper associationEndReverseMapper = null;
	public static Mapper zGetMemberReferencePathAssociationEndMappingAssociationEndReverseMapper()
	{
		if (associationEndReverseMapper == null)
		{
			associationEndReverseMapper = zConstructMemberReferencePathAssociationEndMappingAssociationEndReverseMapper();
		}

		return associationEndReverseMapper;
	}

	private static Mapper associationEndMapper = null;
	public static Mapper zGetMemberReferencePathAssociationEndMappingAssociationEndMapper()
	{
		if (associationEndMapper == null)
		{
			associationEndMapper = zConstructMemberReferencePathAssociationEndMappingAssociationEndMapper();
		}

		return associationEndMapper;
	}

	private static Mapper associationEndPureReverseMapper = null;
	public static Mapper zGetMemberReferencePathAssociationEndMappingAssociationEndPureReverseMapper()
	{
		if (associationEndPureReverseMapper == null)
		{
			associationEndPureReverseMapper = zConstructMemberReferencePathAssociationEndMappingAssociationEndPureReverseMapper();
		}

		return associationEndPureReverseMapper;
	}

	private static Mapper zConstructMemberReferencePathAssociationEndMappingAssociationEndPureReverseMapper()
	{
		InternalList associationEndMapperMapperList = new InternalList(2);
		associationEndMapperMapperList.add(MemberReferencePathAssociationEndMappingFinder.zGetConstantJoin(0));
		associationEndMapperMapperList.add(MemberReferencePathAssociationEndMappingFinder.zGetConstantJoin(2));
		Mapper associationEndMapper = new MultiEqualityMapper(associationEndMapperMapperList);
		associationEndMapper.setName("associationEnd");
		return associationEndMapper;
	}

	private static Mapper zConstructMemberReferencePathAssociationEndMappingAssociationEndReverseMapper()
	{
		InternalList associationEndMapperMapperList = new InternalList(2);
		associationEndMapperMapperList.add(MemberReferencePathAssociationEndMappingFinder.zGetConstantJoin(0));
		associationEndMapperMapperList.add(MemberReferencePathAssociationEndMappingFinder.zGetConstantJoin(2));
		Mapper associationEndMapper = new MultiEqualityMapper(associationEndMapperMapperList);
		associationEndMapper.setName("associationEnd");
		return associationEndMapper;
	}

	private static Mapper zConstructMemberReferencePathAssociationEndMappingAssociationEndMapper()
	{
		InternalList associationEndMapperMapperList = new InternalList(2);
		associationEndMapperMapperList.add(MemberReferencePathAssociationEndMappingFinder.zGetConstantJoin(1));
		associationEndMapperMapperList.add(MemberReferencePathAssociationEndMappingFinder.zGetConstantJoin(3));
		Mapper associationEndMapper = new MultiEqualityMapper(associationEndMapperMapperList);
		associationEndMapper.setName("memberReferencePaths");
		return associationEndMapper;
	}

	/** maps to \"MEMBER_REFERENCE_PATH_ASSOCIATION_END_MAPPING\".\"MEMBER_REFERENCE_PATH_ID\" **/
	public static LongAttribute memberReferencePathId()
	{
		return finder.memberReferencePathId();
	}

	/** maps to \"MEMBER_REFERENCE_PATH_ASSOCIATION_END_MAPPING\".\"ASSOCIATION_OWNING_CLASS_NAME\" **/
	public static StringAttribute associationOwningClassName()
	{
		return finder.associationOwningClassName();
	}

	/** maps to \"MEMBER_REFERENCE_PATH_ASSOCIATION_END_MAPPING\".\"ASSOCIATION_END_NAME\" **/
	public static StringAttribute associationEndName()
	{
		return finder.associationEndName();
	}

	/** maps to \"MEMBER_REFERENCE_PATH_ASSOCIATION_END_MAPPING\".\"ORDINAL\" **/
	public static IntegerAttribute ordinal()
	{
		return finder.ordinal();
	}

	public static AssociationEndFinder.AssociationEndSingleFinderForRelatedClasses associationEnd()
	{
		return finder.associationEnd();
	}

	public static class MemberReferencePathAssociationEndMappingAssociationEndFinderSubclass extends AssociationEndFinder.AssociationEndSingleFinderForRelatedClasses
	{
		public MemberReferencePathAssociationEndMappingAssociationEndFinderSubclass(Mapper mapper, NormalAndListValueSelector parentSelector )
		{
			super(mapper);
			this._parentSelector = (AbstractRelatedFinder) parentSelector;
			this._orderBy = null;
			this._type = SIMPLE_TO_ONE;
			this._name = "associationEnd";
			this.zSetRelationshipMultiExtractor(RelationshipMultiExtractor.withLeftAttributes(
				AssociationEndFinder.owningClassName(),
				AssociationEndFinder.name()).withExtractors(
				MemberReferencePathAssociationEndMappingFinder.associationOwningClassName(),
				MemberReferencePathAssociationEndMappingFinder.associationEndName()));
		}

		public DeepRelationshipAttribute copy()
		{
			return new MemberReferencePathAssociationEndMappingAssociationEndFinderSubclass(zGetMapper(), (NormalAndListValueSelector) this._parentSelector
			);
		}

		protected AssociationEnd plainValueOf(MemberReferencePathAssociationEndMapping _obj)
		{
			return _obj.getAssociationEnd();
		}

		protected AssociationEndList plainListValueOf(Object _obj)
		{
			return ((MemberReferencePathAssociationEndMappingList)_obj).getAssociationEnds();
		}
	}

	public static MemberReferencePathFinder.MemberReferencePathSingleFinderForRelatedClasses memberReferencePath()
	{
		return finder.memberReferencePath();
	}

	public static class MemberReferencePathAssociationEndMappingMemberReferencePathFinderSubclass extends MemberReferencePathFinder.MemberReferencePathSingleFinderForRelatedClasses
	{
		public MemberReferencePathAssociationEndMappingMemberReferencePathFinderSubclass(Mapper mapper, NormalAndListValueSelector parentSelector )
		{
			super(mapper);
			this._parentSelector = (AbstractRelatedFinder) parentSelector;
			this._orderBy = null;
			this._type = SIMPLE_TO_ONE;
			this._name = "memberReferencePath";
		}

		public DeepRelationshipAttribute copy()
		{
			return new MemberReferencePathAssociationEndMappingMemberReferencePathFinderSubclass(zGetMapper(), (NormalAndListValueSelector) this._parentSelector
			);
		}

		protected MemberReferencePath plainValueOf(MemberReferencePathAssociationEndMapping _obj)
		{
			return _obj.getMemberReferencePath();
		}

		protected MemberReferencePathList plainListValueOf(Object _obj)
		{
			return ((MemberReferencePathAssociationEndMappingList)_obj).getMemberReferencePaths();
		}
	}

	public static Operation eq(MemberReferencePathAssociationEndMapping other)
	{
		return finder.eq(other);
	}

	public static Operation all()
	{
		return new All(memberReferencePathId());
	}

	public static MemberReferencePathAssociationEndMappingSingleFinder getFinderInstance()
	{
		return finder;
	}

	public static Attribute[] getPrimaryKeyAttributes()
	{
		return new Attribute[] 
		{
			memberReferencePathId()
			, associationOwningClassName()
			, associationEndName()
		}

		;
	}

	public static Attribute[] getImmutableAttributes()
	{
		return new Attribute[] 
		{
			memberReferencePathId()
			, memberReferencePathId()
			, associationOwningClassName()
			, associationEndName()
		}

		;
	}

	public static AsOfAttribute[] getAsOfAttributes()
	{
		return null;
	}

	protected static void initializeIndicies(Cache cache)
	{
		cache.addIndex("0 Index", new Attribute[] 
		{
			memberReferencePathId()
		}

		);
		cache.addIndex("1 Index", new Attribute[] 
		{
			associationEndName()
			, associationOwningClassName()
		}

		);
	}

	protected static void initializePortal(MithraObjectDeserializer objectFactory, Cache cache,
		MithraConfigurationManager.Config config)
	{
		initializeIndicies(cache);
		isFullCache = cache.isFullCache();
		isOffHeap = cache.isOffHeap();
		MithraObjectPortal portal;
		if (config.isParticipatingInTx())
		{
			portal = new MithraTransactionalPortal(objectFactory, cache, getFinderInstance(),
				config.getRelationshipCacheSize(), config.getMinQueriesToKeep(), null,
				null, null, 0,
				(MithraObjectPersister) objectFactory);
		}
		else
		{
			portal = new MithraReadOnlyPortal(objectFactory, cache, getFinderInstance(),
				config.getRelationshipCacheSize(), config.getMinQueriesToKeep(), null,
				null, null, 0,
				(MithraObjectPersister) objectFactory);
		}

		portal.setParentFinders(new RelatedFinder[] 
		{
			AssociationEndFinder.getFinderInstance(),MemberReferencePathFinder.getFinderInstance(),
		}

		);
		config.initializePortal(portal);
		objectPortal.destroy();
		objectPortal = portal;
	}

	protected static void initializeClientPortal(MithraObjectDeserializer objectFactory, Cache cache,
		MithraConfigurationManager.Config config)
	{
		initializeIndicies(cache);
		isFullCache = cache.isFullCache();
		isOffHeap = cache.isOffHeap();
		MithraObjectPortal portal;
		if (config.isParticipatingInTx())
		{
			portal = new MithraTransactionalPortal(objectFactory, cache, getFinderInstance(),
				config.getRelationshipCacheSize(), config.getMinQueriesToKeep(),
				null, null,
				null, 0,
				new RemoteMithraObjectPersister(config.getRemoteMithraService(), getFinderInstance(), false));
		}
		else
		{
			portal = new MithraReadOnlyPortal(objectFactory, cache, getFinderInstance(),
				config.getRelationshipCacheSize(), config.getMinQueriesToKeep(),
				null, null,
				null, 0,
				new RemoteMithraObjectPersister(config.getRemoteMithraService(), getFinderInstance(), false));
		}

		portal.setParentFinders(new RelatedFinder[] 
		{
			AssociationEndFinder.getFinderInstance(),MemberReferencePathFinder.getFinderInstance(),
		}

		);
		config.initializePortal(portal);
		objectPortal.destroy();
		objectPortal = portal;
	}

	public static boolean isFullCache()
	{
		return isFullCache;
	}

	public static boolean isOffHeap()
	{
		return isOffHeap;
	}

	public static Attribute getAttributeByName(String attributeName)
	{
		return finder.getAttributeByName(attributeName);
	}

	public static com.gs.fw.common.mithra.extractor.Function getAttributeOrRelationshipSelector(String attributeName)
	{
		return finder.getAttributeOrRelationshipSelector(attributeName);
	}

	public static RelatedFinder getRelatedFinderByName(String relationshipName)
	{
		return finder.getRelationshipFinderByName(relationshipName);
	}

	public static DoubleAttribute[] zGetDoubleAttributes()
	{
		DoubleAttribute[] result = new DoubleAttribute[0];
		return result;
	}

	public static BigDecimalAttribute[] zGetBigDecimalAttributes()
	{
		BigDecimalAttribute[] result = new BigDecimalAttribute[0];
		return result;
	}

	public static void zResetPortal()
	{
		objectPortal.destroy();
		objectPortal = new UninitializedPortal("klass.model.meta.domain.MemberReferencePathAssociationEndMapping");
		isFullCache = false;
		isOffHeap = false;
	}

	public static void setTransactionModeFullTransactionParticipation(MithraTransaction tx)
	{
		tx.setTxParticipationMode(objectPortal, FullTransactionalParticipationMode.getInstance());
	}

	public static void setTransactionModeReadCacheUpdateCausesRefreshAndLock(MithraTransaction tx)
	{
		tx.setTxParticipationMode(objectPortal, ReadCacheUpdateCausesRefreshAndLockTxParticipationMode.getInstance());
	}

	public static void registerForNotification(MithraApplicationClassLevelNotificationListener listener)
	{
		getMithraObjectPortal().registerForApplicationClassLevelNotification(listener);
	}
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy