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; }
/// <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); } } } } }
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"); }
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; } }