예제 #1
0
        /// <summary>
        /// Makes a deep copy of the current DojoPromotionStatus.
        /// </summary>
        /// <returns> A new DojoPromotionStatus object reflecting the cloned DojoPromotionStatus object.</returns>
        public DojoPromotionStatus Copy()
        {
            DojoPromotionStatus dojoPromotionStatus = new DojoPromotionStatus();

            CopyTo(dojoPromotionStatus);
            return(dojoPromotionStatus);
        }
예제 #2
0
        /// <summary>
        /// Makes a deep copy of the current DojoPromotionStatus.
        /// </summary>
        /// <returns> A new DojoPromotionStatus object reflecting the cloned DojoPromotionStatus object.</returns>
        /// <param name="isolation">Placeholders are used to isolate the DojoPromotionStatus from its children.</param>
        public DojoPromotionStatus Copy(bool isolation)
        {
            DojoPromotionStatus dojoPromotionStatus = new DojoPromotionStatus();

            CopyTo(dojoPromotionStatus, isolation);
            return(dojoPromotionStatus);
        }
예제 #3
0
        public static DojoPromotionStatus ParseFromReader(IDataReader r, int idOffset, int dataOffset)
        {
            DojoPromotionStatus dojoPromotionStatus = new DojoPromotionStatus();

            FillFromReader(dojoPromotionStatus, r, idOffset, dataOffset);
            return(dojoPromotionStatus);
        }
예제 #4
0
        public static DojoPromotionStatus NewPlaceHolder(int iD)
        {
            DojoPromotionStatus dojoPromotionStatus = new DojoPromotionStatus();

            dojoPromotionStatus.iD            = iD;
            dojoPromotionStatus.isPlaceHolder = true;
            dojoPromotionStatus.isSynced      = true;
            return(dojoPromotionStatus);
        }
예제 #5
0
        /// <summary>
        /// Duplicates DojoPromotionStatus object into a database; may or may not be the same database
        /// as the parent object.
        /// </summary>
        /// <returns> A new DojoPromotionStatus object reflecting the replicated DojoPromotionStatus object.</returns>
        public DojoPromotionStatus Duplicate()
        {
            DojoPromotionStatus clonedDojoPromotionStatus = this.Clone();

            // Insert must be called after children are replicated!
            clonedDojoPromotionStatus.iD       = DojoPromotionStatusManager._insert(clonedDojoPromotionStatus);
            clonedDojoPromotionStatus.isSynced = true;
            return(clonedDojoPromotionStatus);
        }
예제 #6
0
        public void Remove(DojoPromotionStatus value)
        {
            OnCollectionChanged(EventArgs.Empty);
            int index = IndexOf(value);

            if (index == -1)
            {
                throw(new Exception("DojoPromotionStatus not found in collection."));
            }
            RemoveAt(index);
        }
예제 #7
0
 /// <summary>
 /// Deep copies the current DojoPromotionStatus to another instance of DojoPromotionStatus.
 /// </summary>
 /// <param name="DojoPromotionStatus">The DojoPromotionStatus to copy to.</param>
 /// <param name="isolation">Placeholders are used to isolate the DojoPromotionStatus from its children.</param>
 public void CopyTo(DojoPromotionStatus dojoPromotionStatus, bool isolation)
 {
     dojoPromotionStatus.iD            = iD;
     dojoPromotionStatus.isPlaceHolder = isPlaceHolder;
     dojoPromotionStatus.isSynced      = isSynced;
     dojoPromotionStatus.name          = name;
     dojoPromotionStatus.orderNum      = orderNum;
     dojoPromotionStatus.isEligible    = isEligible;
     dojoPromotionStatus.isPassed      = isPassed;
     dojoPromotionStatus.isFailed      = isFailed;
     dojoPromotionStatus.isFiled       = isFiled;
     dojoPromotionStatus.isApproved    = isApproved;
     dojoPromotionStatus.isAwarded     = isAwarded;
 }
예제 #8
0
 public int IndexOf(DojoPromotionStatus value)
 {
     lock (this)
     {
         for (int x = 0; x < count; x++)
         {
             if (DojoPromotionStatusArray[x].Equals(value))
             {
                 return(x);
             }
         }
         return(-1);
     }
 }
예제 #9
0
        /// <summary>
        /// Fills the {0} from a OleIDataReader.
        /// </summary>
        public static void FillFromReader(DojoPromotionStatus dojoPromotionStatus, IDataReader r, int idOffset, int dataOffset)
        {
            dojoPromotionStatus.iD            = r.GetInt32(idOffset);
            dojoPromotionStatus.isSynced      = true;
            dojoPromotionStatus.isPlaceHolder = false;

            dojoPromotionStatus.name       = r.GetString(0 + dataOffset);
            dojoPromotionStatus.orderNum   = r.GetInt32(1 + dataOffset);
            dojoPromotionStatus.isEligible = r.GetBoolean(2 + dataOffset);
            dojoPromotionStatus.isPassed   = r.GetBoolean(3 + dataOffset);
            dojoPromotionStatus.isFailed   = r.GetBoolean(4 + dataOffset);
            dojoPromotionStatus.isFiled    = r.GetBoolean(5 + dataOffset);
            dojoPromotionStatus.isApproved = r.GetBoolean(6 + dataOffset);
            dojoPromotionStatus.isAwarded  = r.GetBoolean(7 + dataOffset);
        }
예제 #10
0
        internal static bool _fill(DojoPromotionStatus dojoPromotionStatus)
        {
            // Clone item from cache.
            if (cacheEnabled)
            {
                object cachedObject = cacheFind(dojoPromotionStatus.iD);
                if (cachedObject != null)
                {
                    ((DojoPromotionStatus)cachedObject).CopyTo(dojoPromotionStatus, true);
                    return(dojoPromotionStatus.isSynced);
                }
            }

            StringBuilder query;
            Database      database;
            DbCommand     dbCommand;

            query = new StringBuilder("SELECT ");
            query.Append(string.Join(",", InnerJoinFields));
            query.Append(" FROM kitTessen_PromotionStatuses WHERE DojoPromotionStatusID=");
            query.Append(dojoPromotionStatus.iD);
            query.Append(";");

            database  = DatabaseFactory.CreateDatabase();
            dbCommand = database.GetSqlStringCommand(query.ToString());
            IDataReader r = database.ExecuteReader(dbCommand);

            if (!r.Read())
            {
                throw(new Exception(string.Format("Cannot find DojoPromotionStatusID '{0}'.",
                                                  dojoPromotionStatus.iD)));
            }

            FillFromReader(dojoPromotionStatus, r, 0, 1);

            // Microsoft DAAB still needs to have the reader closed.
            r.Close();

            // Store dojoPromotionStatus in cache.
            if (cacheEnabled)
            {
                cacheStore(dojoPromotionStatus);
            }

            return(true);
        }
예제 #11
0
        /// <summary>
        /// Clones DojoPromotionStatus object and clones child objects with cloning or replication.
        /// as the parent object.
        /// </summary>
        /// <returns> A new DojoPromotionStatus object reflecting the replicated DojoPromotionStatus object.</returns>
        public DojoPromotionStatus Clone()
        {
            DojoPromotionStatus clonedDojoPromotionStatus = new DojoPromotionStatus();

            clonedDojoPromotionStatus.iD         = iD;
            clonedDojoPromotionStatus.isSynced   = isSynced;
            clonedDojoPromotionStatus.name       = name;
            clonedDojoPromotionStatus.orderNum   = orderNum;
            clonedDojoPromotionStatus.isEligible = isEligible;
            clonedDojoPromotionStatus.isPassed   = isPassed;
            clonedDojoPromotionStatus.isFailed   = isFailed;
            clonedDojoPromotionStatus.isFiled    = isFiled;
            clonedDojoPromotionStatus.isApproved = isApproved;
            clonedDojoPromotionStatus.isAwarded  = isAwarded;


            return(clonedDojoPromotionStatus);
        }
예제 #12
0
 public int Add(DojoPromotionStatus value)
 {
     OnCollectionChanged(EventArgs.Empty);
     lock (this)
     {
         count++;
         // Resize the array if the count is greater than the length
         // of the array.
         if (count > DojoPromotionStatusArray.GetUpperBound(0) + 1)
         {
             DojoPromotionStatus[] tempDojoPromotionStatusArray = new DojoPromotionStatus[count * 2];
             Array.Copy(DojoPromotionStatusArray, tempDojoPromotionStatusArray, count - 1);
             DojoPromotionStatusArray = tempDojoPromotionStatusArray;
         }
         DojoPromotionStatusArray[count - 1] = value;
     }
     return(count - 1);
 }
예제 #13
0
        internal static int _update(DojoPromotionStatus dojoPromotionStatus)
        {
            Database  database;
            DbCommand dbCommand;

            database = DatabaseFactory.CreateDatabase();

            dbCommand = database.GetSqlStringCommand("UPDATE kitTessen_PromotionStatuses SET Name=@Name," +
                                                     "OrderNum=@OrderNum," +
                                                     "IsEligible=@IsEligible," +
                                                     "IsPassed=@IsPassed," +
                                                     "IsFailed=@IsFailed," +
                                                     "IsFiled=@IsFiled," +
                                                     "IsApproved=@IsApproved," +
                                                     "IsAwarded=@IsAwarded WHERE DojoPromotionStatusID=@DojoPromotionStatusID;");

            fillParameters(database, dbCommand, dojoPromotionStatus);
            database.AddInParameter(dbCommand, "DojoPromotionStatusID", DbType.Int32, dojoPromotionStatus.iD);
            // Abandon remaining updates if no rows have been updated by returning false immediately.
            if (database.ExecuteNonQuery(dbCommand) == 0)
            {
                return(-1);
            }

            // Store dojoPromotionStatus in cache.
            if (cacheEnabled)
            {
                cacheStore(dojoPromotionStatus);
            }
            // ************************* WARNING ****************************
            // Update operations must invalidate the cached collections.
            // Invalidation MUST invalidate any foreign cached collections that
            // with children objects this manager provides or else the foreign
            // caches retain invalidated and potentially corrupt data!
            // NOTE:
            // NitroCast only allows collection caching on objects that do not
            // have any children objects to minimize potential corruption.
            // ************************* WARNING ****************************

            invalidateCachedCollections();

            return(dojoPromotionStatus.iD);
        }
예제 #14
0
        private static void fillParameters(Database database, DbCommand dbCommand, DojoPromotionStatus dojoPromotionStatus)
        {
            #region General

            addParameter(database, dbCommand, "@Name", DbType.String, dojoPromotionStatus.name);
            addParameter(database, dbCommand, "@OrderNum", DbType.Int32, dojoPromotionStatus.orderNum);

            #endregion

            #region Flags

            addParameter(database, dbCommand, "@IsEligible", DbType.Boolean, dojoPromotionStatus.isEligible);
            addParameter(database, dbCommand, "@IsPassed", DbType.Boolean, dojoPromotionStatus.isPassed);
            addParameter(database, dbCommand, "@IsFailed", DbType.Boolean, dojoPromotionStatus.isFailed);
            addParameter(database, dbCommand, "@IsFiled", DbType.Boolean, dojoPromotionStatus.isFiled);
            addParameter(database, dbCommand, "@IsApproved", DbType.Boolean, dojoPromotionStatus.isApproved);
            addParameter(database, dbCommand, "@IsAwarded", DbType.Boolean, dojoPromotionStatus.isAwarded);

            #endregion
        }
예제 #15
0
 public void Insert(int index, DojoPromotionStatus value)
 {
     OnCollectionChanged(EventArgs.Empty);
     lock (this)
     {
         count++;
         // Resize the array if the count is greater than the length
         // of the array.
         if (count > DojoPromotionStatusArray.GetUpperBound(0) + 1)
         {
             DojoPromotionStatus[] tempDojoPromotionStatusArray = new DojoPromotionStatus[count * 2];
             Array.Copy(DojoPromotionStatusArray, tempDojoPromotionStatusArray, count - 1);
             DojoPromotionStatusArray = tempDojoPromotionStatusArray;
         }
         for (int x = index + 1; x == count - 2; x++)
         {
             DojoPromotionStatusArray[x] = DojoPromotionStatusArray[x - 1];
         }
         DojoPromotionStatusArray[index] = value;
     }
 }
예제 #16
0
 /// <summary>
 /// Deep copies the current DojoPromotionStatus to another instance of DojoPromotionStatus.
 /// This method does not provide isolated copies; use overriden method for this feature.
 /// </summary>
 /// <param name="DojoPromotionStatus">The DojoPromotionStatus to copy to.</param>
 public void CopyTo(DojoPromotionStatus dojoPromotionStatus)
 {
     CopyTo(dojoPromotionStatus, false);
 }
예제 #17
0
        private static void cacheStore(DojoPromotionStatus dojoPromotionStatus)
        {
            CacheManager cache = CacheFactory.GetCacheManager();

            cache.Add("kitTessen_PromotionStatuses_" + dojoPromotionStatus.iD.ToString(), dojoPromotionStatus);
        }
예제 #18
0
        /// <summary>
        /// Compares the object's ID to another object's ID.
        /// </summary>
        int IComparable.CompareTo(object obj)
        {
            DojoPromotionStatus dojoPromotionStatus = (DojoPromotionStatus)obj;

            return(this.iD - dojoPromotionStatus.iD);
        }
예제 #19
0
        public DojoPromotionStatusCollection GetCollection(int topCount, string whereClause, string sortClause)
        {
            StringBuilder query;
            Database      database;
            DbCommand     dbCommand;
            IDataReader   r;
            DojoPromotionStatusCollection dojoPromotionStatusCollection;
            int hashcode;

            // Cache Handling

            hashcode = 0;

            if (cacheEnabled)
            {
                hashcode = topCount.GetHashCode() +
                           whereClause.GetHashCode() +
                           sortClause.GetHashCode() +
                           tableName.GetHashCode();

                DojoPromotionStatusCollection collection = cacheFindCollection(hashcode);
                if (collection != null)
                {
                    return(collection);
                }
            }


            query = new StringBuilder("SELECT ");

            if (topCount > 0)
            {
                query.Append("TOP ");
                query.Append(topCount);
                query.Append(" ");
            }

            foreach (string columnName in InnerJoinFields)
            {
                query.Append("DojoPromotionStatus.");
                query.Append(columnName);
                query.Append(",");
            }

            //
            // Remove trailing comma
            //
            query.Length--;
            query.Append(" FROM kitTessen_PromotionStatuses AS DojoPromotionStatus");
            //
            // Render where clause
            //
            if (whereClause != string.Empty)
            {
                query.Append(" WHERE ");
                query.Append(whereClause);
            }

            //
            // Render sort clause
            //
            if (sortClause != string.Empty)
            {
                query.Append(" ORDER BY ");
                query.Append(sortClause);
            }

            //
            // Render final semicolon
            //
            query.Append(";");
            database  = DatabaseFactory.CreateDatabase();
            dbCommand = database.GetSqlStringCommand(query.ToString());
                        #if DEBUG
            try
            {
                r = database.ExecuteReader(dbCommand);
            }
            catch (Exception e)
            {
                string msg = e.Message;
                throw(new Exception(msg + " --- Query: " + query.ToString()));
            }
                        #else
            r = database.ExecuteReader(dbCommand);
                        #endif

            dojoPromotionStatusCollection = new DojoPromotionStatusCollection();

            while (r.Read())
            {
                DojoPromotionStatus dojoPromotionStatus = ParseFromReader(r, 0, 1);

                dojoPromotionStatusCollection.Add(dojoPromotionStatus);
            }

            // Microsoft DAAB still needs to close readers.
            r.Close();

            if (cacheEnabled)
            {
                cacheStoreCollection(hashcode, dojoPromotionStatusCollection);
            }

            return(dojoPromotionStatusCollection);
        }
예제 #20
0
        /// <summary>
        /// Inserts a DojoPromotionStatus into the database. All children should have been
        /// saved to the database before insertion. New children will not be
        /// related to this object in the database.
        /// </summary>
        /// <param name="_DojoPromotionStatus">The DojoPromotionStatus to insert into the database.</param>
        internal static int _insert(DojoPromotionStatus dojoPromotionStatus)
        {
            int       id;
            string    query;
            Database  database;
            DbCommand dbCommand;

            database = DatabaseFactory.CreateDatabase();

            query = "INSERT INTO kitTessen_PromotionStatuses " +
                    "(" +
                    "Name," +
                    "OrderNum," +
                    "IsEligible," +
                    "IsPassed," +
                    "IsFailed," +
                    "IsFiled," +
                    "IsApproved," +
                    "IsAwarded) VALUES (" +
                    "@Name," +
                    "@OrderNum," +
                    "@IsEligible," +
                    "@IsPassed," +
                    "@IsFailed," +
                    "@IsFiled," +
                    "@IsApproved," +
                    "@IsAwarded);";

            if (database.ConnectionStringWithoutCredentials.StartsWith("provider=microsoft.jet.oledb.4.0"))
            {
                // Microsoft Access
                // Connection must remain open for IDENTITY to return correct value,
                // therefore use the dbCommand object's Connection directly to control
                // connection state.
                dbCommand = database.GetSqlStringCommand(query);
                fillParameters(database, dbCommand, dojoPromotionStatus);
                dbCommand.Connection = database.CreateConnection();
                dbCommand.Connection.Open();
                dbCommand.ExecuteNonQuery();
                dbCommand.CommandText = "SELECT @@IDENTITY AS LastID";
                id = (int)dbCommand.ExecuteScalar();
                dbCommand.Connection.Close();
            }
            else
            {
                //// Microsoft SQL Server
                dbCommand = database.GetSqlStringCommand(query + " SELECT @LastID = SCOPE_IDENTITY();");
                fillParameters(database, dbCommand, dojoPromotionStatus);
                database.AddOutParameter(dbCommand, "@LastID", DbType.Int32, 10);
                database.ExecuteNonQuery(dbCommand);
                id = (int)dbCommand.Parameters["@LastID"].Value;
            }
            // Store dojoPromotionStatus in cache.
            if (cacheEnabled)
            {
                cacheStore(dojoPromotionStatus);
            }
            // ************************* WARNING ****************************
            // Insert operations must invalidate the cached collections.
            // Invalidation MUST invalidate any foreign cached collections that
            // with children objects this manager provides or else the foreign
            // caches retain invalidated and potentially corrupt data!
            // NOTE:
            // NitroCast only allows collection caching on objects that do not
            // have any children objects to minimize potential corruption.
            invalidateCachedCollections();
            return(id);
        }
예제 #21
0
 /// <summary>
 /// Compares the object's ID to another object's ID.
 /// </summary>
 public int CompareTo(DojoPromotionStatus dojoPromotionStatus)
 {
     return(this.iD - dojoPromotionStatus.iD);
 }
예제 #22
0
 public bool Contains(DojoPromotionStatus value)
 {
     return(IndexOf(value) != -1);
 }