Пример #1
0
 protected AdomdDiscoveryCommand BuildBase(DiscoveryTarget target, string connectionString)
 {
     switch (target)
     {
         case DiscoveryTarget.Perspectives:
             return new PerspectiveDiscoveryCommand(connectionString);
         case DiscoveryTarget.MeasureGroups:
             return new MeasureGroupDiscoveryCommand(connectionString);
         case DiscoveryTarget.Measures:
             return new MeasureDiscoveryCommand(connectionString);
         case DiscoveryTarget.Dimensions:
             return new DimensionDiscoveryCommand(connectionString);
         case DiscoveryTarget.Hierarchies:
             return new HierarchyDiscoveryCommand(connectionString);
         case DiscoveryTarget.Levels:
             return new LevelDiscoveryCommand(connectionString);
         case DiscoveryTarget.Properties:
             return new PropertyDiscoveryCommand(connectionString);
         case DiscoveryTarget.Tables:
             return new TableDiscoveryCommand(connectionString);
         case DiscoveryTarget.Columns:
             return new ColumnDiscoveryCommand(connectionString);
     }
     throw new ArgumentOutOfRangeException();
 }
Пример #2
0
 internal MetadataLinkedToDiscoveryRequest(string connectionString, DiscoveryTarget target, IEnumerable <IFilter> filters)
     : base()
 {
     base.ConnectionString = connectionString;
     this.Target           = target;
     base.AddFilters(filters);
 }
Пример #3
0
 public IFilter GetFilter(DiscoveryTarget target)
 {
     if (Filters.ContainsKey(target))
         return Filters[target];
     else
         return null;
 }
 internal MetadataLinkedToDiscoveryRequest(string connectionString, DiscoveryTarget target, IEnumerable<IFilter> filters)
     : base()
 {
     base.ConnectionString = connectionString;
     this.Target = target;
     base.AddFilters(filters);
 }
Пример #5
0
 internal AtLeastOneNotNull(IEnumerable<IFilter> filters, DiscoveryTarget firstElement, DiscoveryTarget secondElement)
     : base(filters)
 {
     elements = new List<DiscoveryTarget>();
     elements.Add(firstElement);
     elements.Add(secondElement);
 }
Пример #6
0
        public AdomdDiscoveryCommand Build(DiscoveryTarget target, IEnumerable <IFilter> filters, string connectionString)
        {
            var command = BuildBase(target, connectionString);

            command.Filters = filters;
            return(command);
        }
Пример #7
0
        protected AdomdDiscoveryCommand BuildBase(DiscoveryTarget target, string connectionString)
        {
            switch (target)
            {
            case DiscoveryTarget.Perspectives:
                return(new PerspectiveDiscoveryCommand(connectionString));

            case DiscoveryTarget.MeasureGroups:
                return(new MeasureGroupDiscoveryCommand(connectionString));

            case DiscoveryTarget.Measures:
                return(new MeasureDiscoveryCommand(connectionString));

            case DiscoveryTarget.Dimensions:
                return(new DimensionDiscoveryCommand(connectionString));

            case DiscoveryTarget.Hierarchies:
                return(new HierarchyDiscoveryCommand(connectionString));

            case DiscoveryTarget.Levels:
                return(new LevelDiscoveryCommand(connectionString));

            case DiscoveryTarget.Properties:
                return(new PropertyDiscoveryCommand(connectionString));

            case DiscoveryTarget.Tables:
                return(new TableDiscoveryCommand(connectionString));

            case DiscoveryTarget.Columns:
                return(new ColumnDiscoveryCommand(connectionString));
            }
            throw new ArgumentOutOfRangeException();
        }
Пример #8
0
        public string GetNextTargetPluralExpression(DiscoveryTarget target)
        {
            var text = string.Empty;

            switch (target)
            {
            case DiscoveryTarget.MeasureGroups:
                text = "measures";
                break;

            case DiscoveryTarget.Dimensions:
                text = "hierarchies";
                break;

            case DiscoveryTarget.Hierarchies:
                text = "levels";
                break;

            case DiscoveryTarget.Levels:
                text = "properties";
                break;

            default:
                break;
            }

            return(text);
        }
Пример #9
0
 internal AtLeastOneNotNull(IEnumerable <IFilter> filters, DiscoveryTarget firstElement, DiscoveryTarget secondElement)
     : base(filters)
 {
     elements = new List <DiscoveryTarget>();
     elements.Add(firstElement);
     elements.Add(secondElement);
 }
Пример #10
0
        private IFilter BuildCaptionFilterForCaptionProperty(object src, DiscoveryTarget target)
        {
            var caption = GetPropertyValue(src, "Caption");
            if (string.IsNullOrEmpty(caption))
                return null;

            var filter = new CaptionFilter(caption, target);
            return filter;
        }
Пример #11
0
 public IFilter GetFilter(DiscoveryTarget target)
 {
     if (Filters.ContainsKey(target))
     {
         return(Filters[target]);
     }
     else
     {
         return(null);
     }
 }
Пример #12
0
        private IFilter BuildCaptionFilterForCaptionProperty(object src, DiscoveryTarget target)
        {
            var caption = GetPropertyValue(src, "Caption");

            if (string.IsNullOrEmpty(caption))
            {
                return(null);
            }

            var filter = new CaptionFilter(caption, target);

            return(filter);
        }
Пример #13
0
        public virtual MetadataDiscoveryRequest BuildRelation(string connectionString, DiscoveryTarget target, IEnumerable<IFilter> filters)
        {
            //Validations
            Validate(
                new List<Validation>()
                {
                    new ConnectionStringNotEmpty(connectionString),
                    new PerspectiveNotNull(filters),
                    new AtLeastOneNotNull(filters, DiscoveryTarget.Dimensions, DiscoveryTarget.MeasureGroups)
                }
            );

            //If validation of parameters is successfull then we build the object
            var disco = new MetadataLinkedToDiscoveryRequest(connectionString, target, filters);
            return disco;
        }
Пример #14
0
        public virtual MetadataDiscoveryRequest BuildDirect(string connectionString, DiscoveryTarget target, IEnumerable<IFilter> filters)
        {
            //Validations
            Validate(
                new List<Validation>()
                {
                    new ConnectionStringNotEmpty(connectionString),
                    !target.Equals(DiscoveryTarget.Perspectives) ? (Validation)new PerspectiveNotNull(filters) : new NoValidation(),
                    new MeasureGroupWithoutDimension(filters),
                    new MeasureWithoutDimension(filters),
                    new MeasureNotNull(filters),
                    new DimensionNotNullIfHierarchy(target, filters),
                    new HierarchyNotNullIfLevel(target, filters),
                    new LevelNotNullIfProperty(target, filters),
                    new TableNotNullIfColumn(target, filters)
                }
            );

            //If validation of parameters is successfull then we build the object
            var disco = new MetadataDiscoveryRequest(connectionString, target, filters);
            return disco;
        }
Пример #15
0
        public string GetNextTargetPluralExpression(DiscoveryTarget target)
        {
            var text = string.Empty;
            switch (target)
            {
                case DiscoveryTarget.MeasureGroups:
                    text = "measures";
                    break;
                case DiscoveryTarget.Dimensions:
                    text = "hierarchies";
                    break;
                case DiscoveryTarget.Hierarchies:
                    text = "levels";
                    break;
                case DiscoveryTarget.Levels:
                    text = "properties";
                    break;
                default:
                    break;
            }

            return text;
        }
Пример #16
0
        public virtual MetadataDiscoveryRequest BuildDirect(string connectionString, DiscoveryTarget target, IEnumerable <IFilter> filters)
        {
            //Validations
            Validate(
                new List <Validation>()
            {
                new ConnectionStringNotEmpty(connectionString),
                !target.Equals(DiscoveryTarget.Perspectives) ? (Validation) new PerspectiveNotNull(filters) : new NoValidation(),
                new MeasureGroupWithoutDimension(filters),
                new MeasureWithoutDimension(filters),
                new MeasureNotNull(filters),
                new DimensionNotNullIfHierarchy(target, filters),
                new HierarchyNotNullIfLevel(target, filters),
                new LevelNotNullIfProperty(target, filters),
                new TableNotNullIfColumn(target, filters)
            }
                );

            //If validation of parameters is successfull then we build the object
            var disco = new MetadataDiscoveryRequest(connectionString, target, filters);

            return(disco);
        }
Пример #17
0
        public string GetTargetExpression(DiscoveryTarget target)
        {
            var text = string.Empty;

            switch (target)
            {
            case DiscoveryTarget.Perspectives:
                text = "perspective";
                break;

            case DiscoveryTarget.MeasureGroups:
                text = "measure-group";
                break;

            case DiscoveryTarget.Measures:
                text = "measure";
                break;

            case DiscoveryTarget.Dimensions:
                text = "dimension";
                break;

            case DiscoveryTarget.Hierarchies:
                text = "hierarchy";
                break;

            case DiscoveryTarget.Levels:
                text = "level";
                break;

            default:
                break;
            }

            return(text);
        }
Пример #18
0
 internal HierarchyNotNullIfLevel(DiscoveryTarget target, IEnumerable<IFilter> filters)
     : base(DiscoveryTarget.Hierarchies, target, filters)
 {
 }
Пример #19
0
 protected CaptionFilter FindFilterOrNull(IEnumerable<IFilter> filters, DiscoveryTarget target)
 {
     var filter = filters.FirstOrDefault(f => f is CaptionFilter && ((CaptionFilter)f).Target == target);
     return (CaptionFilter)filter;
 }
Пример #20
0
 protected IFilter GetSpecificFilter(DiscoveryTarget discoveryTarget)
 {
     return GetSpecificFilter(discoveryTarget, Filters);
 }
Пример #21
0
        protected CaptionFilter FindFilter(DiscoveryTarget target)
        {
            var filter = Filters.First(f => f is CaptionFilter && ((CaptionFilter)f).Target == target);

            return((CaptionFilter)filter);
        }
 internal DimensionNotNullIfHierarchy(DiscoveryTarget target, IEnumerable<IFilter> filters)
     : base(DiscoveryTarget.Dimensions, target, filters)
 {
 }
Пример #23
0
 internal HierarchyNotNullIfLevel(DiscoveryTarget target, IEnumerable<IFilter> filters)
     : base(DiscoveryTarget.Hierarchies, target, filters)
 {
 }
Пример #24
0
 internal LevelNotNullIfProperty(DiscoveryTarget target, IEnumerable <IFilter> filters)
     : base(DiscoveryTarget.Levels, target, filters)
 {
 }
Пример #25
0
 protected IFilter GetSpecificFilter(DiscoveryTarget discoveryTarget)
 {
     return(GetSpecificFilter(discoveryTarget, Filters));
 }
Пример #26
0
        protected CaptionFilter FindFilterOrNull(IEnumerable <IFilter> filters, DiscoveryTarget target)
        {
            var filter = filters.FirstOrDefault(f => f is CaptionFilter && ((CaptionFilter)f).Target == target);

            return((CaptionFilter)filter);
        }
Пример #27
0
 internal FilterNotNull(DiscoveryTarget filterInvestigated, IEnumerable <IFilter> filters)
     : this(filterInvestigated, filterInvestigated, filters)
 {
     //this.target = target;
 }
Пример #28
0
 internal FilterNotNull(DiscoveryTarget filterInvestigated, DiscoveryTarget target, IEnumerable <IFilter> filters)
     : base(filters)
 {
     this.target             = target;
     this.filterInvestigated = filterInvestigated;
 }
Пример #29
0
 internal TableNotNullIfColumn(DiscoveryTarget target,IEnumerable<IFilter> filters)
     : base(DiscoveryTarget.Tables, target, filters)
 {
 }
Пример #30
0
 public AdomdDiscoveryCommand Build(DiscoveryTarget target, IEnumerable<IFilter> filters, string connectionString)
 {
     var command = BuildBase(target, connectionString);
     command.Filters = filters;
     return command;
 }
Пример #31
0
 protected IFilter GetSpecificFilter(DiscoveryTarget discoveryTarget, IEnumerable<IFilter> filters)
 {
     return filters.FirstOrDefault(f => f.Target == discoveryTarget);
 }
Пример #32
0
 internal FilterNotNull(DiscoveryTarget filterInvestigated, DiscoveryTarget target, IEnumerable<IFilter> filters)
     : base(filters)
 {
     this.target = target;
     this.filterInvestigated = filterInvestigated;
 }
Пример #33
0
 public CaptionFilter(string caption, DiscoveryTarget target)
 {
     captionFilter = caption;
     targetFilter  = target;
 }
Пример #34
0
 internal LevelNotNullIfProperty(DiscoveryTarget target, IEnumerable<IFilter> filters)
     : base(DiscoveryTarget.Levels, target, filters)
 {
 }
Пример #35
0
 protected CaptionFilter FindFilter(DiscoveryTarget target)
 {
     var filter = Filters.First(f => f is CaptionFilter && ((CaptionFilter)f).Target == target);
     return (CaptionFilter)filter;
 }
Пример #36
0
 internal FilterNotNull(DiscoveryTarget filterInvestigated, IEnumerable<IFilter> filters)
     : this(filterInvestigated, filterInvestigated, filters)
 {
     //this.target = target;
 }
Пример #37
0
 internal TableNotNullIfColumn(DiscoveryTarget target, IEnumerable <IFilter> filters)
     : base(DiscoveryTarget.Tables, target, filters)
 {
 }
Пример #38
0
 public CaptionFilter(string caption, DiscoveryTarget target)
 {
     captionFilter = caption;
     targetFilter = target;
 }
Пример #39
0
        public string GetTargetExpression(DiscoveryTarget target)
        {
            var text = string.Empty;
            switch (target)
            {
                case DiscoveryTarget.Perspectives:
                    text = "perspective";
                    break;
                case DiscoveryTarget.MeasureGroups:
                    text = "measure-group";
                    break;
                case DiscoveryTarget.Measures:
                    text = "measure";
                    break;
                case DiscoveryTarget.Dimensions:
                    text = "dimension";
                    break;
                case DiscoveryTarget.Hierarchies:
                    text = "hierarchy";
                    break;
                case DiscoveryTarget.Levels:
                    text = "level";
                    break;
                default:
                    break;
            }

            return text;
        }
Пример #40
0
        public virtual MetadataDiscoveryRequest BuildRelation(string connectionString, DiscoveryTarget target, IEnumerable <IFilter> filters)
        {
            //Validations
            Validate(
                new List <Validation>()
            {
                new ConnectionStringNotEmpty(connectionString),
                new PerspectiveNotNull(filters),
                new AtLeastOneNotNull(filters, DiscoveryTarget.Dimensions, DiscoveryTarget.MeasureGroups)
            }
                );

            //If validation of parameters is successfull then we build the object
            var disco = new MetadataLinkedToDiscoveryRequest(connectionString, target, filters);

            return(disco);
        }
Пример #41
0
 internal DimensionNotNullIfHierarchy(DiscoveryTarget target, IEnumerable <IFilter> filters)
     : base(DiscoveryTarget.Dimensions, target, filters)
 {
 }
Пример #42
0
 protected IFilter GetSpecificFilter(DiscoveryTarget discoveryTarget, IEnumerable <IFilter> filters)
 {
     return(filters.FirstOrDefault(f => f.Target == discoveryTarget));
 }