public void MergeFrom(CsrfPolicy other)
 {
     if (other == null)
     {
         return;
     }
     if (other.filterEnabled_ != null)
     {
         if (filterEnabled_ == null)
         {
             FilterEnabled = new global::Envoy.Api.V2.Core.RuntimeFractionalPercent();
         }
         FilterEnabled.MergeFrom(other.FilterEnabled);
     }
     if (other.shadowEnabled_ != null)
     {
         if (shadowEnabled_ == null)
         {
             ShadowEnabled = new global::Envoy.Api.V2.Core.RuntimeFractionalPercent();
         }
         ShadowEnabled.MergeFrom(other.ShadowEnabled);
     }
     additionalOrigins_.Add(other.additionalOrigins_);
     _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
 }
Example #2
0
 public static DevExpress.DashboardCommon.Dashboard CreateDashBoard(this IDashboardDefinition template, FilterEnabled filterEnabled, Func<Type, object> dashboardDatasource) {
     var dashBoard = CreateDashBoard(template,dashboardDatasource);
     if (dashBoard != null){
         dashBoard.ApplyModel(filterEnabled, template);
     }
     return dashBoard;
 }
Example #3
0
 public static DevExpress.DashboardCommon.Dashboard CreateDashBoard(this IDashboardDefinition template, IObjectSpace objectSpace, FilterEnabled filterEnabled) {
     var dashboard = new DevExpress.DashboardCommon.Dashboard();
     try {
         if (!string.IsNullOrEmpty(template.Xml)) {
             dashboard = LoadFromXml(template);
             dashboard.ApplyModel(filterEnabled, template, objectSpace);
         }
         foreach (var typeWrapper in template.DashboardTypes.Select(wrapper => new { wrapper.Type, Caption = GetCaption(wrapper) })) {
             var wrapper = typeWrapper;
             var dsource = dashboard.DataSources.FirstOrDefault(source => source.Name.Equals(wrapper.Caption));
             var objects = objectSpace.CreateDashboardDataSource(wrapper.Type);
             if (dsource != null) {
                 dsource.Data = objects;
             }
             else if (!dashboard.DataSources.Contains(ds => ds.Name.Equals(wrapper.Caption))) {
                 dashboard.AddDataSource(typeWrapper.Caption, objects);
             }
         }
     }
     catch (Exception e) {
         dashboard.Dispose();
         Tracing.Tracer.LogError(e);
     }
     return dashboard;
 }
Example #4
0
 public static void ActDectFilter(FilterEnabled filter)
 {
     if (MainScreen.Filters.filterEnabled != filter)
     {
         Controller.AutoClick(MainScreen.TAB_VILLAGE);
         Controller.AutoClick(MainScreen.TAB_MAP);
         Controller.MoveTo(MainScreen.FILTER_BUTTON);
         Thread.Sleep(100);
         Controller.MoveTo(1360 / 2, 768 / 2);
         Thread.Sleep(1000);
         Controller.AutoClick(MainScreen.FILTER_BUTTON);
         Controller.AutoClick(MainScreen.Filters.filters[filter]);
         MainScreen.Filters.filterEnabled = filter;
         Thread.Sleep(1000);
     }
 }
Example #5
0
 public static string GetXml(this IDashboardDefinition template, FilterEnabled filterEnabled, Func<Type, object> dashboardDatasource) {
     var dashBoard = template.CreateDashBoard( filterEnabled,dashboardDatasource);
     using (var memoryStream = new MemoryStream()) {
         dashBoard.SaveToXml(memoryStream);
         memoryStream.Position = 0;
         var document = XDocument.Load(memoryStream);
         var dataSourceAdapters = GetDataSources(dashBoard, filterEnabled, template);
         foreach (var dataSourceAdapter in dataSourceAdapters){
             if (document.Root != null){
                 DataSourceAdapter adapter = dataSourceAdapter;
                 var datasources = document.Root.Descendants("DataSource").Where(element => element.Attribute("Name").Value==adapter.DataSource.Name&&!element.Descendants("Filter").Any());
                 foreach (var datasource in datasources){
                     datasource.Add(new XElement("Filter", dataSourceAdapter.DataSource.Filter));    
                 }
             }
         }
         return document.ToString();
     }
 }
        public override int GetHashCode()
        {
            int hash = 1;

            if (filterEnabled_ != null)
            {
                hash ^= FilterEnabled.GetHashCode();
            }
            if (shadowEnabled_ != null)
            {
                hash ^= ShadowEnabled.GetHashCode();
            }
            hash ^= additionalOrigins_.GetHashCode();
            if (_unknownFields != null)
            {
                hash ^= _unknownFields.GetHashCode();
            }
            return(hash);
        }
Example #7
0
        public static string GetXml(this IDashboardDefinition template, FilterEnabled filterEnabled, IObjectSpace objectSpace)
        {
            var dashBoard = template.CreateDashBoard(objectSpace, filterEnabled);

            using (var memoryStream = new MemoryStream()) {
                dashBoard.SaveToXml(memoryStream);
                memoryStream.Position = 0;
                var document           = XDocument.Load(memoryStream);
                var dataSourceAdapters = GetDataSources(dashBoard, filterEnabled, template, objectSpace);
                foreach (var dataSourceAdapter in dataSourceAdapters)
                {
                    if (document.Root != null)
                    {
                        DataSourceAdapter adapter = dataSourceAdapter;
                        var datasources           = document.Root.Descendants("DataSource").Where(element => element.Attribute("Name").Value == adapter.DataSource.Name && !element.Descendants("Filter").Any());
                        foreach (var datasource in datasources)
                        {
                            datasource.Add(new XElement("Filter", dataSourceAdapter.DataSource.Filter));
                        }
                    }
                }
                return(document.ToString());
            }
        }
Example #8
0
 public static void ApplyModel(this DevExpress.DashboardCommon.Dashboard dashboard, FilterEnabled filterEnabled, IDashboardDefinition template) {
     var dataSources = GetDataSources(dashboard, filterEnabled, template);
     foreach (var adapter in dataSources) {
         var filter = adapter.ModelDataSource as  IModelDashboardDataSourceFilter;
         if (filter != null) adapter.DataSource.Filter = filter.ApplyFilter(adapter.DataSource.Filter);
         var parameter = adapter.ModelDataSource as IModelDashboardDataSourceParameter;
         if (parameter != null) parameter.ApplyValue(dashboard.Parameters[parameter.ParameterName]);
     }
 }
Example #9
0
 private static bool CanApply(IModelDashboardDataSource modelDashboardDataSource, FilterEnabled filterEnabled, IDashboardDefinition template) {
     if (modelDashboardDataSource.NodeEnabled&&new[]{FilterEnabled.Always,filterEnabled}.Contains(modelDashboardDataSource.Enabled)) {
         var objectSpace = XPObjectSpace.FindObjectSpaceByObject(template);
         var isObjectFitForCriteria = objectSpace.IsObjectFitForCriteria(template, CriteriaOperator.Parse(modelDashboardDataSource.DashboardDefinitionCriteria));
         return isObjectFitForCriteria.HasValue && isObjectFitForCriteria.Value;
     }
     return false;
 }
Example #10
0
 static IEnumerable<DataSourceAdapter> GetDataSources(DevExpress.DashboardCommon.Dashboard dashboard, FilterEnabled filterEnabled, IDashboardDefinition template) {
     var modelDashboardModule =
         ((IModelApplicationDashboardModule)ApplicationHelper.Instance.Application.Model).DashboardModule;
     return modelDashboardModule.DataSources.Where(source => source.NodeEnabled && CanApply(source, filterEnabled, template)).Select(modelDataSource => {
         var dataSource = dashboard.DataSources.FirstOrDefault(source =>
             String.Equals(source.Name.Trim(), modelDataSource.DataSourceName.Trim(), StringComparison.CurrentCultureIgnoreCase));
         return new DataSourceAdapter(dataSource, modelDataSource);
     }).Where(adapter => adapter.ModelDataSource != null&&adapter.DataSource!=null);
 }
Example #11
0
        public static DevExpress.DashboardCommon.Dashboard CreateDashBoard(this IDashboardDefinition template, IObjectSpace objectSpace, FilterEnabled filterEnabled)
        {
            var dashboard = new DevExpress.DashboardCommon.Dashboard();

            try {
                if (!string.IsNullOrEmpty(template.Xml))
                {
                    dashboard = LoadFromXml(template);
                    dashboard.ApplyModel(filterEnabled, template, objectSpace);
                }
                foreach (var typeWrapper in template.DashboardTypes.Select(wrapper => new { wrapper.Type, Caption = GetCaption(wrapper) }))
                {
                    var wrapper = typeWrapper;
                    var dsource = dashboard.DataSources.FirstOrDefault(source => source.Name.Equals(wrapper.Caption));
                    var objects = objectSpace.CreateDashboardDataSource(wrapper.Type);
                    if (dsource != null)
                    {
                        dsource.Data = objects;
                    }
                    else if (!dashboard.DataSources.Contains(ds => ds.Name.Equals(wrapper.Caption)))
                    {
                        dashboard.AddDataSource(typeWrapper.Caption, objects);
                    }
                }
            }
            catch (Exception e) {
                dashboard.Dispose();
                Tracing.Tracer.LogError(e);
            }
            return(dashboard);
        }
Example #12
0
 private static bool CanApply(IModelDashboardDataSource modelDashboardDataSource, FilterEnabled filterEnabled, IDashboardDefinition template, IObjectSpace objectSpace)
 {
     if (modelDashboardDataSource.NodeEnabled && new[] { FilterEnabled.Always, filterEnabled }.Contains(modelDashboardDataSource.Enabled))
     {
         var isObjectFitForCriteria = objectSpace.IsObjectFitForCriteria(template, CriteriaOperator.Parse(modelDashboardDataSource.DashboardDefinitionCriteria));
         return(isObjectFitForCriteria.HasValue && isObjectFitForCriteria.Value);
     }
     return(false);
 }
Example #13
0
        static IEnumerable <DataSourceAdapter> GetDataSources(DevExpress.DashboardCommon.Dashboard dashboard, FilterEnabled filterEnabled, IDashboardDefinition template, IObjectSpace objectSpace)
        {
            var modelDashboardModule =
                ((IModelApplicationDashboardModule)ApplicationHelper.Instance.Application.Model).DashboardModule;

            return(modelDashboardModule.DataSources.Where(source => source.NodeEnabled && CanApply(source, filterEnabled, template, objectSpace)).Select(modelDataSource => {
                var dataSource = dashboard.DataSources.FirstOrDefault(source =>
                                                                      String.Equals(source.Name.Trim(), modelDataSource.DataSourceName.Trim(), StringComparison.CurrentCultureIgnoreCase));
                return new DataSourceAdapter(dataSource, modelDataSource);
            }).Where(adapter => adapter.ModelDataSource != null));
        }
Example #14
0
        public static void ApplyModel(this DevExpress.DashboardCommon.Dashboard dashboard, FilterEnabled filterEnabled, IDashboardDefinition template, IObjectSpace objectSpace)
        {
            var dataSources = GetDataSources(dashboard, filterEnabled, template, objectSpace);

            foreach (var adapter in dataSources)
            {
                var filter = adapter.ModelDataSource as  IModelDashboardDataSourceFilter;
                if (filter != null)
                {
                    adapter.DataSource.Filter = filter.ApplyFilter(adapter.DataSource.Filter);
                }
                var parameter = adapter.ModelDataSource as IModelDashboardDataSourceParameter;
                if (parameter != null)
                {
                    parameter.ApplyValue(dashboard.Parameters[parameter.ParameterName]);
                }
            }
        }
Example #15
0
        public static DevExpress.DashboardCommon.Dashboard CreateDashBoard(this IDashboardDefinition template, FilterEnabled filterEnabled)
        {
            var dashBoard = CreateDashBoard(template);

            if (dashBoard != null)
            {
                dashBoard.ApplyModel(filterEnabled, template);
            }
            return(dashBoard);
        }