Exemplo n.º 1
0
 public Maintainable(string name, MaintainableType type, string desc, double?miles)
 {
     this.Name        = name;
     this.TypeId      = type.Id;
     this.Type        = type;
     this.Description = desc;
     this.Mileage     = miles;
 }
Exemplo n.º 2
0
        /// <summary>
        /// Recursive function which creates URNs for all maintainables, versionables and identifiables.
        /// </summary>
        /// <param name="o">The element to test and create an URN for.</param>
        /// <param name="maintainable">The parent maintainable.</param>
        /// <param name="maintainableID">The parent maintainable ID.</param>
        /// <param name="maintainableVersion">The parent maintainable version.</param>
        private void CreateElementURNs(object o, string maintainable, string maintainableID, string maintainableVersion)
        {
            //if (!o.GetType().Namespace.StartsWith("DDIClassLibrary"))
            //    return;
            if (o.GetType().IsValueType || o is String || o is Enum)
            {
                return;
            }

            if (o is MaintainableType)
            {
                MaintainableType m = o as MaintainableType;
                m.CreateURN(AgencyID);
                maintainable        = m.ObjectType;
                maintainableID      = m.id;
                maintainableVersion = m.version;
            }
            else if (o is VersionableType)
            {
                (o as VersionableType).CreateURN(AgencyID, maintainable, maintainableID, maintainableVersion);
            }
            else if (o is IdentifiableType)
            {
                (o as IdentifiableType).CreateURN(AgencyID, maintainable, maintainableID, maintainableVersion);
            }

            foreach (var p in o.GetType().GetProperties())
            {
                if (o.GetType().IsGenericType)
                {
                    foreach (var v in o as IList)
                    {
                        CreateElementURNs(v, maintainable, maintainableID, maintainableVersion);
                    }
                }
                else
                {
                    Object propvalue = p.GetValue(o, null);

                    if (propvalue != null)
                    {
                        if (propvalue.GetType().IsGenericType&& propvalue.GetType().GetGenericTypeDefinition() == typeof(List <>))
                        {
                            foreach (var v in propvalue as IList)
                            {
                                CreateElementURNs(v, maintainable, maintainableID, maintainableVersion);
                            }
                        }
                        else
                        {
                            CreateElementURNs(propvalue, maintainable, maintainableID, maintainableVersion);
                        }
                    }
                }
            }
        }
Exemplo n.º 3
0
        static void Main(string[] args)
        {
            WriteLine("Hello World!");

            MaintainableUnit miles      = new MaintainableUnit("Mile", typeof(int));
            MaintainableType car        = new MaintainableType("Car", "Any automobile, including cars, trucks, vans, etc.");
            TaskDefault      oilDefault = new TaskDefault("Change oil", car, 6000, miles, null, "Change the oil of this vehicle.");
            Maintainable     myCar      = new Maintainable("Red Civic", car, "2016 Honda Civic Sedan, CVT", 40000);

            WriteLine("Done");
        }
Exemplo n.º 4
0
 public TaskDefault(string name, MaintainableType type, double duration, MaintainableUnit unit, int?severity, string description)
 {
     this.Name             = name;
     this.TypeId           = type.Id;
     this.Type             = type;
     this.DurationValue    = duration;
     this.UnitId           = unit.Id;
     this.MaintainableUnit = unit;
     this.Severity         = severity;
     this.Description      = description;
 }
        /// <summary>
        /// The assemble maintainable.
        /// </summary>
        /// <param name="builtObj">
        /// The object to populate.
        /// </param>
        /// <param name="buildFrom">
        /// The build from.
        /// </param>
        public void AssembleMaintainable(MaintainableType builtObj, IMaintainableObject buildFrom)
        {
            // Populate it from inherited super
            this.AssembleNameable(builtObj, buildFrom);

            // Populate it using this class's specifics
            string str1 = buildFrom.AgencyId;
            if (!string.IsNullOrWhiteSpace(str1))
            {
                builtObj.agencyID = buildFrom.AgencyId;
            }

            string str0 = buildFrom.Version;
            if (!string.IsNullOrWhiteSpace(str0))
            {
                builtObj.version = buildFrom.Version;
            }

            if (buildFrom.StartDate != null)
            {
                builtObj.validFrom = buildFrom.StartDate.Date;
            }

            if (buildFrom.EndDate != null)
            {
                builtObj.validTo = buildFrom.EndDate.Date;
            }

            if (buildFrom.IsExternalReference.IsSet())
            {
                builtObj.isExternalReference = buildFrom.IsExternalReference.IsTrue;
            }

            if (buildFrom.IsFinal.IsSet())
            {
                builtObj.isFinal = buildFrom.IsFinal.IsTrue;
            }

            if (buildFrom.StructureUrl != null)
            {
                builtObj.structureURL = buildFrom.StructureUrl;
            }

            if (buildFrom.ServiceUrl != null)
            {
                builtObj.serviceURL = buildFrom.ServiceUrl;
            }
        }