public virtual void UnregisterIndex(Net.Vpc.Upa.Index item) { string s = item.GetName(); indexes.Remove(s); System.Collections.Generic.IList <Net.Vpc.Upa.Index> indexesByEnt = Net.Vpc.Upa.Impl.FwkConvertUtils.GetMapValue <string, System.Collections.Generic.IList <Net.Vpc.Upa.Index> >(indexesByEntity, item.GetEntity().GetName()); indexesByEnt.Remove(item); }
public virtual Net.Vpc.Upa.Index GetIndex(string name) /* throws Net.Vpc.Upa.Exceptions.UPAException */ { Net.Vpc.Upa.Index item = Net.Vpc.Upa.Impl.FwkConvertUtils.GetMapValue <string, Net.Vpc.Upa.Index>(indexes, name); if (item == null) { throw new Net.Vpc.Upa.Exceptions.NoSuchIndexException(null, name, null); } return(item); }
public virtual void RegisterIndex(Net.Vpc.Upa.Index item, Net.Vpc.Upa.Entity entity) { string s = item.GetName(); indexes[s] = item; System.Collections.Generic.IList <Net.Vpc.Upa.Index> indexesByEnt = Net.Vpc.Upa.Impl.FwkConvertUtils.GetMapValue <string, System.Collections.Generic.IList <Net.Vpc.Upa.Index> >(indexesByEntity, item.GetEntity().GetName()); if (indexesByEnt == null) { indexesByEnt = new System.Collections.Generic.List <Net.Vpc.Upa.Index>(); indexesByEntity[item.GetEntity().GetName()] = indexesByEnt; } indexesByEnt.Add(item); }
public InsertRecordDuplicateUniqueFieldsException(Net.Vpc.Upa.Entity entity, Net.Vpc.Upa.Index index, object @value) : base(entity, "insert.DuplicateUniqueFields", FieldTitles(index == null ? null : new System.Collections.Generic.List <Net.Vpc.Upa.Field>(index.GetFields())), @value) { this.@value = @value; if (index != null) { this.indexName = index.GetName(); this.entityName = index.GetEntity().GetName(); this.fieldNames = new System.Collections.Generic.List <string>(); foreach (Net.Vpc.Upa.Field field in index.GetFields()) { this.fieldNames.Add(field.GetName()); } } }
public override void Persist(Net.Vpc.Upa.Persistence.EntityExecutionContext executionContext, Net.Vpc.Upa.PersistenceState status) /* throws System.Exception, Net.Vpc.Upa.Exceptions.UPAException */ { Net.Vpc.Upa.Index index = (Net.Vpc.Upa.Index)@object; Net.Vpc.Upa.Impl.Persistence.DefaultPersistenceStore persistenceUnitManager = (Net.Vpc.Upa.Impl.Persistence.DefaultPersistenceStore)executionContext.GetPersistenceStore(); if (!persistenceUnitManager.IsView(index.GetEntity())) { log.TraceEvent(System.Diagnostics.TraceEventType.Verbose, 60, Net.Vpc.Upa.Impl.FwkConvertUtils.LogMessageExceptionFormatter("Commit {0} / {1} : found {2}, persist", null, new object[] { @object, typedObject, status })); Net.Vpc.Upa.Persistence.UConnection b = executionContext.GetConnection(); if (status == Net.Vpc.Upa.PersistenceState.DIRTY) { b.ExecuteNonQuery(persistenceUnitManager.GetDropIndexStatement(index), null, null); } b.ExecuteNonQuery(persistenceUnitManager.GetCreateIndexStatement(index), null, null); } }
public virtual bool ContainsIndex(Net.Vpc.Upa.Index item, Net.Vpc.Upa.Entity parent) { return(indexes.ContainsKey(item.GetName())); }
public virtual string GetPersistenceName(object source, Net.Vpc.Upa.Persistence.PersistenceNameType spec) /* throws Net.Vpc.Upa.Exceptions.UPAException */ { System.Collections.Generic.IList <Net.Vpc.Upa.Persistence.PersistenceNameType> types = new System.Collections.Generic.List <Net.Vpc.Upa.Persistence.PersistenceNameType>(); Net.Vpc.Upa.Impl.Persistence.UPAObjectAndSpec upaObjectAndSpec = new Net.Vpc.Upa.Impl.Persistence.UPAObjectAndSpec(source, spec); if (source is Net.Vpc.Upa.Entity) { Net.Vpc.Upa.Entity v = (Net.Vpc.Upa.Entity)source; if (spec == null) { string p = v.GetPersistenceName(); if (p == null) { p = v.GetName(); } foreach (Net.Vpc.Upa.Extensions.EntityExtensionDefinition extension in v.GetExtensionDefinitions()) { if (extension is Net.Vpc.Upa.Extensions.ViewEntityExtensionDefinition) { types.Add(Net.Vpc.Upa.Persistence.PersistenceNameType.VIEW); } if (extension is Net.Vpc.Upa.Extensions.UnionEntityExtensionDefinition) { types.Add(Net.Vpc.Upa.Persistence.PersistenceNameType.UNION_TABLE); } } types.Add(Net.Vpc.Upa.Persistence.PersistenceNameType.TABLE); return(ValidatePersistenceName(p, Net.Vpc.Upa.Persistence.PersistenceNameType.TABLE, v.GetName(), upaObjectAndSpec, types)); } if (Net.Vpc.Upa.Persistence.PersistenceNameType.PK_CONSTRAINT.Equals(spec)) { string p = v.GetShortName(); if (p == null) { p = v.GetPersistenceName(); } if (p == null) { p = v.GetName(); } types.Add(Net.Vpc.Upa.Persistence.PersistenceNameType.PK_CONSTRAINT); return(ValidatePersistenceName("PK_" + p, Net.Vpc.Upa.Persistence.PersistenceNameType.PK_CONSTRAINT, v.GetName(), upaObjectAndSpec, types)); } if (Net.Vpc.Upa.Persistence.PersistenceNameType.IMPLICIT_VIEW.Equals(spec)) { string p = v.GetPersistenceName(); if (p == null) { p = v.GetName(); } types.Add(Net.Vpc.Upa.Persistence.PersistenceNameType.IMPLICIT_VIEW); types.Add(Net.Vpc.Upa.Persistence.PersistenceNameType.TABLE); return(ValidatePersistenceName(p + "_IV", Net.Vpc.Upa.Persistence.PersistenceNameType.IMPLICIT_VIEW, v.GetName(), upaObjectAndSpec, types)); } } if (source is Net.Vpc.Upa.Index) { Net.Vpc.Upa.Index v = (Net.Vpc.Upa.Index)source; string p = v.GetPersistenceName(); if (p == null) { p = v.GetName(); } if (p == null) { string sn = v.GetEntity().GetShortName(); if (sn == null) { sn = v.GetEntity().GetName(); } System.Text.StringBuilder sb = new System.Text.StringBuilder("IX_").Append(sn); foreach (string field in v.GetFieldNames()) { sb.Append("_").Append(field); } p = sb.ToString(); } types.Add(Net.Vpc.Upa.Persistence.PersistenceNameType.INDEX); return(ValidatePersistenceName(p, Net.Vpc.Upa.Persistence.PersistenceNameType.INDEX, v.GetName(), upaObjectAndSpec, types)); } if (source is Net.Vpc.Upa.Relationship) { Net.Vpc.Upa.Relationship v = (Net.Vpc.Upa.Relationship)source; string p = v.GetPersistenceName(); if (p == null) { p = v.GetName(); } types.Add(Net.Vpc.Upa.Persistence.PersistenceNameType.FK_CONSTRAINT); return(ValidatePersistenceName(p, Net.Vpc.Upa.Persistence.PersistenceNameType.FK_CONSTRAINT, v.GetName(), upaObjectAndSpec, types)); } if (source is Net.Vpc.Upa.PrimitiveField) { Net.Vpc.Upa.Field v = (Net.Vpc.Upa.Field)source; string p = v.GetPersistenceName(); if (p == null) { p = v.GetName(); } types.Add(Net.Vpc.Upa.Persistence.PersistenceNameType.COLUMN); return(ValidatePersistenceName(p, Net.Vpc.Upa.Persistence.PersistenceNameType.COLUMN, v.GetEntity().GetName() + "." + v.GetName(), upaObjectAndSpec, types)); } if (source is string) { if (Net.Vpc.Upa.Persistence.PersistenceNameType.ALIAS.Equals(spec)) { return(ValidatePersistenceName((string)source, Net.Vpc.Upa.Persistence.PersistenceNameType.ALIAS, "aliasName", upaObjectAndSpec, types)); } else { return(ValidatePersistenceName((string)source, Net.Vpc.Upa.Persistence.PersistenceNameType.ALIAS, null, upaObjectAndSpec, types)); } } throw new System.ArgumentException("No Supported"); }
public IndexStructureCommit(Net.Vpc.Upa.Index @object, Net.Vpc.Upa.Impl.Persistence.DefaultPersistenceUnitCommitManager persistenceUnitCommitManager) : base(persistenceUnitCommitManager, @object, typeof(Net.Vpc.Upa.Index), null) { }
public IndexEvent(Net.Vpc.Upa.Index index, Net.Vpc.Upa.PersistenceUnit persistenceUnit, Net.Vpc.Upa.EventPhase phase) { this.persistenceUnit = persistenceUnit; this.index = index; this.phase = phase; }