/// <summary> /// Initializes a new DataAttribute instance /// </summary> /// <param name="Name">Attribute name</param> public DataAttribute(string Name, BaseERElement Parent) { this.Name = Name; this.Parent = Parent; IsIdentifier = false; Children = new List <DataAttribute>(); }
/// <summary> /// Initializes a new DataAttribute instance /// </summary> /// <param name="Name">Attribute name</param> /// <param name="Identifier">Is this attribute an identifier</param> /// <param name="Children">Child attributes</param> public DataAttribute(string Name, BaseERElement Parent, bool Identifier, List <DataAttribute> Children) { this.Name = Name; this.Parent = Parent; this.IsIdentifier = Identifier; this.Children = Children; }
/// <summary> /// Initializes a new DataAttribute instance /// </summary> /// <param name="Name">Attribute name</param> /// <param name="Identifier">Is this attribute an identifier</param> public DataAttribute(string Name, BaseERElement Parent, bool Identifier) { this.Name = Name; this.Parent = Parent; this.IsIdentifier = Identifier; Children = new List <DataAttribute>(); }
/// <summary> /// Initialize a new MapRule instance /// </summary> /// <param name="Source"></param> /// <param name="Target"></param> /// <param name="Rules"></param> public MapRule(BaseERElement Source, MongoDBCollection Target, bool IsMain = true) { this.Source = Source; this.Target = Target; this.Rules = new Dictionary <string, string>(); this.IsMain = IsMain; }
/// <summary> /// Initialize a new instance of DataAttribute /// </summary> /// <param name="Name"></param> /// <param name="OfType"></param> /// <param name="Parent"></param> /// <param name="Identifier"></param> public DataAttribute(string Name, string OfType, BaseERElement Parent, bool MultiValued, bool Identifier) { this.Name = Name; this.OfType = OfType; this.Parent = Parent; this.MultiValued = MultiValued; this.IsIdentifier = Identifier; Children = new List <DataAttribute>(); }
/// <summary> /// Find the main collection of an er element /// </summary> /// <param name="Source"></param> /// <returns></returns> public MongoDBCollection FindMainCollection(BaseERElement Source) { MapRule MainRule = FindMainRule(Source); if (MainRule != null) { return(MainRule.Target); } return(null); }
/// <summary> /// Initialize a new instance of VirtualRule /// </summary> /// <param name="SourceEntity"></param> /// <param name=""></param> public VirtualRule(BaseERElement SourceEntity, string Alias = null) { this.SourceERElement = SourceEntity; this.Alias = Alias; Rules = new Dictionary <string, string>(); }
/// <summary> /// Find rule between an erelement and mongodb collection /// </summary> /// <param name="Source"></param> /// <param name="Target"></param> /// <returns></returns> public MapRule FindRule(BaseERElement Source, MongoDBCollection Target) { return(Rules.FirstOrDefault(R => R.Source.Name == Source.Name && R.Target.Name == Target.Name)); }
/// <summary> /// Find the main mapping for the given ERElement /// </summary> /// <param name="Source"></param> /// <returns></returns> public MapRule FindMainRule(BaseERElement Source) { return(Rules.FirstOrDefault(R => R.Source.Name == Source.Name && R.IsMain)); }
/// <summary> /// Find rules that have the given ERElement as source /// </summary> /// <param name="Source"></param> /// <returns></returns> public List <MapRule> FindRules(BaseERElement Source) { return(Rules.Where(R => R.Source == Source).ToList()); }
/// <summary> /// Initialize a new instance of JoinableEntity /// </summary> /// <param name="Alias"></param> /// <param name="Element"></param> public QueryableEntity(BaseERElement Element, string Alias = null) { this.Element = Element; this.Alias = Alias; }