public void NativeSQLQueryJoinReturnHashCodeByAlias() { var sr1 = new NativeSQLQueryJoinReturn("myAlias", "owner", "ownerProp", null, LockMode.None); var sr2 = new NativeSQLQueryJoinReturn("myAlias", "owner", "ownerProp", null, LockMode.None); Assert.AreEqual(sr1.GetHashCode(), sr2.GetHashCode()); }
private void ProcessJoinReturn(NativeSQLQueryJoinReturn fetchReturn) { string alias = fetchReturn.Alias; if (alias2Persister.ContainsKey(alias) || alias2CollectionPersister.ContainsKey(alias)) { // already been processed... return; } string ownerAlias = fetchReturn.OwnerAlias; // Make sure the owner alias is known... if (!alias2Return.ContainsKey(ownerAlias)) { throw new HibernateException(string.Format("Owner alias [{0}] is unknown for alias [{1}]", ownerAlias, alias)); } // If this return's alias has not been processed yet, do so b4 further processing of this return if (!alias2Persister.ContainsKey(ownerAlias)) { ProcessReturn(alias2Return[ownerAlias]); } ISqlLoadable ownerPersister = alias2Persister[ownerAlias]; IType returnType = ownerPersister.GetPropertyType(fetchReturn.OwnerProperty); if (returnType.IsCollectionType) { string role = ownerPersister.EntityName + '.' + fetchReturn.OwnerProperty; AddCollection(role, alias, fetchReturn.PropertyResultsMap); } else if (returnType.IsEntityType) { EntityType eType = (EntityType) returnType; string returnEntityName = eType.GetAssociatedEntityName(); ISqlLoadable persister = GetSQLLoadable(returnEntityName); AddPersister(alias, fetchReturn.PropertyResultsMap, persister); } }
public void NativeSQLQueryJoinReturnEqualsByAlias() { var sr1 = new NativeSQLQueryJoinReturn("myAlias", "owner", "ownerProp", null, LockMode.None); var sr2 = new NativeSQLQueryJoinReturn("myAlias", "owner", "ownerProp", null, LockMode.None); Assert.AreEqual(sr1, sr2); }