Example #1
0
        /// <summary>
        /// Duplicates DojoClass object into a database; may or may not be the same database
        /// as the parent object.
        /// </summary>
        /// <returns> A new DojoClass object reflecting the replicated DojoClass object.</returns>
        public DojoClass Duplicate()
        {
            DojoClass clonedDojoClass = this.Clone();

            // Insert must be called after children are replicated!
            clonedDojoClass.iD       = DojoClassManager._insert(clonedDojoClass);
            clonedDojoClass.isSynced = true;
            return(clonedDojoClass);
        }
Example #2
0
        /// <summary>
        /// Saves the DojoClass object state to the database.
        /// </summary>
        public int Save()
        {
            if (instructor != null)
            {
                instructor.Save();
            }
            if (parentSeminar != null)
            {
                parentSeminar.Save();
            }
            if (parentDefinition != null)
            {
                parentDefinition.Save();
            }
            if (location != null)
            {
                location.Save();
            }

            if (isSynced)
            {
                return(iD);
            }

            if (iD == -1)
            {
                throw (new Exception("Invalid record; cannot be saved."));
            }
            if (iD == 0)
            {
                iD = DojoClassManager._insert(this);
            }
            else
            {
                DojoClassManager._update(this);
            }
            isSynced = iD != -1;
            return(iD);
        }