Rev 2167 | Blame | Compare with Previous | Last modification | View Log | RSS feed
using System;using System.Collections;namespace EA_ReqPro{/// <summary>/// This class captures all the data of a ReqPro object that we need with a view to creating/// a representation of that object in an EA database./// </summary>public class ReqPro_object{// mutually exclusive state vars (only one can be true in any given object).public bool isPackage;public bool isRequirement;// attributes captured from the ReqPro databasepublic string name; // Short name of the objectpublic string text; // Description of the objectpublic string guid; // GUID of the object in the ReqPro databasepublic string tag; // eg. CR23, SPR1, SPR2.5, etcpublic int tag_enum; // enum version ofpublic string status; // eg Approved, Proposed, etcpublic string subsystem;public string stability;public string source;public string sourceVersion;public string sourceSection;public string versionDateTime;public string difficulty;public string priority;public string version; // to be deprecatedpublic string type; // eg. functional, performance, non-functional, etcpublic int iKey; // Allows us to query ReqPro database effeciently// parser control variablespublic int level; // controls depth ordering in EApublic int treePos; // controls display ordering in EApublic int ea_element_ID; // ID of the EA representation of the ReqPro object once it has been written into the EA databasepublic int numberOfRequirements;// filter control variablespublic bool filtered;// orphanage detectionpublic bool matched;// Relationship modelling variablespublic ReqPro_object parent; // allows us to look upwards// a collection of sub-objects - this is how we can reflect the ReqPro parent-child hierarchy,// by adding objects (packages or requirements) to other objects, drilling down// as required.public ArrayList ReqPro_objects;// a collection of traced-to objects. This captures the explicit traces-to relationships we find in// the ReqPro databasepublic ArrayList ReqPro_traces;/// <summary>/// Constructor logic/// </summary>public ReqPro_object(){isPackage = false;isRequirement = false;name = "";text = "";guid = "";tag = "";status = "Approved";versionDateTime = "";level = 0;treePos = 0;difficulty = "Medium";priority = "Medium";version = "";source = "";sourceVersion = "";sourceSection = "";filtered = false;numberOfRequirements = 0;tag_enum = -1;ea_element_ID = -1;ReqPro_objects = new ArrayList();ReqPro_traces = new ArrayList();parent = null;iKey = -1;subsystem = "";stability = "";type = "";matched = false;}}}