Exemplo n.º 1
0
        /// <inheritdoc />
        public void Build(ksDocument3D document3D, Parameters.Parameters parameters)
        {
            var part         = (ksPart)document3D.GetPart((short)Part_Type.pTop_Part);
            var currentPlane = (ksEntity)part.GetDefaultEntity((short)Obj3dType.o3d_planeYOZ);

            var entitySketch     = (ksEntity)part.NewEntity((short)Obj3dType.o3d_sketch);
            var sketchDefinition = (ksSketchDefinition)entitySketch.GetDefinition();

            sketchDefinition.SetPlane(currentPlane);
            entitySketch.Create();

            var sketchEdit = (ksDocument2D)sketchDefinition.BeginEdit();

            var E = parameters[ParameterName.E];
            var C = parameters[ParameterName.C];
            var D = parameters[ParameterName.D];
            var A = parameters[ParameterName.A];
            var B = parameters[ParameterName.B];

            sketchEdit.ksLineSeg(0, 0, E / 2, 0, 1);
            sketchEdit.ksLineSeg(E / 2, 0, E / 2, C, 1);
            sketchEdit.ksLineSeg(E / 2, C, D / 2, C, 1);
            sketchEdit.ksLineSeg(D / 2, C, A / 2, B, 1);
            sketchEdit.ksLineSeg(A / 2, B, 0, B, 1);
            sketchEdit.ksLineSeg(0, B, 0, 0, 1);
            sketchEdit.ksLineSeg(0, -2, 0, 16, 3);
            sketchDefinition.EndEdit();
        }
Exemplo n.º 2
0
 public override void SetParameters(Parameters.Parameters value)
 {
     _pacientID = ((PacientDetailParameters)value).PacientID;
     _operation = ((PacientDetailParameters)value).Operation;
     pacient    = _dataManager.GetPacient(_pacientID);
     ConfigureForm();
 }
        public IParameters Read(TflTransform transform) {
            var parameters = new Parameters.Parameters(new DefaultFactory(_logger));

            foreach (var p in transform.Parameters) {
                if (string.IsNullOrEmpty(p.Field) && (string.IsNullOrEmpty(p.Name) || string.IsNullOrEmpty(p.Value))) {
                    throw new TransformalizeException(_logger, "The entity {0} has a {1} transform parameter without a field attribute, or name and value attributes.  Entity parameters require one or the other.", _entity.Alias, transform.Method);
                }

                var fields = new Fields(_entity.Fields, _entity.CalculatedFields);
                if (!string.IsNullOrEmpty(p.Field)) {
                    if (fields.FindByParamater(p).Any()) {
                        var field = fields.FindByParamater(p).Last();
                        var name = string.IsNullOrEmpty(p.Name) ? field.Alias : p.Name;
                        parameters.Add(field.Alias, name, null, field.Type);
                    } else {
                        if (!p.Field.StartsWith("Tfl")) {
                            _logger.EntityWarn(_entity.Name, "The entity {0} has a {1} transform parameter that references field {2}.  This field hasn't been defined yet in {0}.", _entity.Alias, transform.Method, p.Field);
                        }
                        var name = string.IsNullOrEmpty(p.Name) ? p.Field : p.Name;
                        parameters.Add(p.Field, name, p.HasValue() ? p.Value : null, "System.String");
                    }
                } else {
                    var parameter = new Parameter(p.Name, p.Value) {
                        SimpleType = Common.ToSimpleType(p.Type),
                        ValueReferencesField = p.HasValue() && fields.Find(p.Value).Any()
                    };
                    parameters.Add(p.Name, parameter);
                }
            }

            return parameters;
        }
Exemplo n.º 4
0
        public static string CreateUrl(Parameters.Parameters parameters, bool truncate = true)
        {
            var url = new PrtgUrl(new ConnectionDetails("prtg.example.com", "username", "password"), XmlFunction.TableData, parameters);

            if (truncate)
            {
                var suffix = "https://prtg.example.com/api/table.xml?";
                var prefix = $"&username=username&passhash=password";
                try
                {
                    Assert.IsTrue(url.Url.StartsWith(suffix), "URL did not start with suffix");
                }
                catch
                {
                    Assert.IsTrue(url.Url.StartsWith(suffix.Substring(0, suffix.Length - 1) + "&"));
                }
                Assert.IsTrue(url.Url.EndsWith(prefix), "URL did not end with prefix");

                var length = url.Url.Length - (suffix.Length + prefix.Length);

                if (length == -1)
                {
                    return(string.Empty);
                }

                return(url.Url.Substring(suffix.Length, length));
            }

            return(url.Url);
        }
Exemplo n.º 5
0
        public async Task Logic_Client_ConnectWithHttps_Async()
        {
            var server = $"https://{Settings.Server}";

            var localClient = new PrtgClient(server, Settings.UserName, client.PassHash, AuthMode.PassHash);

            //Get the method
            var engine  = localClient.GetInternalField("requestEngine");
            var flags   = BindingFlags.NonPublic | BindingFlags.Instance;
            var methods = engine.GetType().GetMethods(flags).Where(m => m.Name == "ExecuteRequestAsync").ToList();
            var method  = methods.First(m => m.GetParameters().Any(p => p.ParameterType.Name == "JsonFunction"));

            //Get the enum
            var jsonFunctionEnum = typeof(PrtgClient).Assembly.GetType("PrtgAPI.JsonFunction");
            var getPassHash      = Enum.Parse(jsonFunctionEnum, "GetPassHash");

            //Construct the parameters
            var parameters = new Parameters.Parameters
            {
                [Parameter.Password] = Settings.Password
            };

            try
            {
                await(Task <string>) method.Invoke(engine, new[] { getPassHash, parameters, null });
            }
            catch (WebException ex)
            {
                if (ex.Message != "Server rejected HTTPS connection on port 443. Please confirm expected server protocol and port, PRTG Core Service is running and that any SSL certificate is trusted")
                {
                    throw;
                }
            }
        }
        public IParameters Read(TflTransform transform) {
            var parameters = new Parameters.Parameters(_defaultFactory);
            var fields = new Fields(_process.OutputFields(), _process.CalculatedFields.WithoutOutput());

            foreach (var p in transform.Parameters) {

                if (!string.IsNullOrEmpty(p.Field)) {
                    if (fields.FindByParamater(p).Any()) {
                        var field = fields.FindByParamater(p).Last();
                        var name = string.IsNullOrEmpty(p.Name) ? field.Alias : p.Name;
                        parameters.Add(field.Alias, name, null, field.Type);
                    } else {
                        _process.Logger.Warn("A {0} transform references {1}, but I can't find the definition for {1}.\r\nYou may need to define the entity attribute in the parameter element.\r\nOr, set the output attribute to true in the field element. Process transforms rely on fields being output.\r\nOne other possibility is that the participates in a relationship with another field with the same name and Transformalize doesn't know which one you want.  If that's the case, you have to alias one of them.", transform.Method, p.Field);
                        var name = p.Name.Equals(string.Empty) ? p.Field : p.Name;
                        parameters.Add(p.Field, name, p.HasValue() ? p.Value : null, p.Type);
                    }
                } else {
                    var parameter = new Parameter(p.Name, p.Value) {
                        SimpleType = Common.ToSimpleType(p.Type),
                        ValueReferencesField = p.HasValue() && fields.Find(p.Value).Any()
                    };
                    parameters.Add(p.Name, parameter);
                }
            }

            return parameters;
        }
Exemplo n.º 7
0
        /// <inheritdoc />
        public void Build(ksDocument3D document3D, Parameters.Parameters parameters)
        {
            var part    = (ksPart)document3D.GetPart((short)Part_Type.pTop_Part);
            var zxPlane = (ksEntity)part.GetDefaultEntity((short)Obj3dType.o3d_planeXOZ);

            var entityOffsetPlane     = (ksEntity)part.NewEntity((short)Obj3dType.o3d_planeOffset);
            var planeOffsetDefinition = (ksPlaneOffsetDefinition)
                                        entityOffsetPlane.GetDefinition();

            planeOffsetDefinition.direction = false;
            planeOffsetDefinition.offset    = parameters[ParameterName.B];
            planeOffsetDefinition.SetPlane(zxPlane);
            entityOffsetPlane.Create();

            var D           = parameters[ParameterName.D];
            var A           = parameters[ParameterName.A];
            var thikness    = parameters[ParameterName.WallThikness];
            var firstSketch = CreateCircleSketch(part, zxPlane,
                                                 D / 2 - thikness / 2);
            var secondSketch = CreateCircleSketch(part, entityOffsetPlane,
                                                  A / 2 - thikness / 2);

            var cutLoft            = (ksEntity)part.NewEntity((short)Obj3dType.o3d_cutLoft);
            var baseLoftDefinition = (ksCutLoftDefinition)cutLoft.GetDefinition();

            baseLoftDefinition.SetLoftParam(false, true, true);
            var sketches = (ksEntityCollection)baseLoftDefinition.Sketchs();

            sketches.Clear();
            sketches.Add(firstSketch);
            sketches.Add(secondSketch);
            cutLoft.Create();
        }
Exemplo n.º 8
0
        internal async Task <string> ExecuteRequestAsync(HtmlFunction function, Parameters.Parameters parameters, Func <HttpResponseMessage, Task <string> > responseParser = null)
        {
            var url = GetPrtgUrl(function, parameters);

            var response = await ExecuteRequestAsync(url, responseParser).ConfigureAwait(false);

            return(response);
        }
Exemplo n.º 9
0
        internal string ExecuteRequest(HtmlFunction function, Parameters.Parameters parameters, Func <HttpResponseMessage, string> responseParser = null)
        {
            var url = GetPrtgUrl(function, parameters);

            var response = ExecuteRequest(url, responseParser);

            return(response);
        }
Exemplo n.º 10
0
        internal async Task <string> ExecuteRequestAsync(HtmlFunction function, Parameters.Parameters parameters)
        {
            var url = new PrtgUrl(prtgClient.Server, prtgClient.UserName, prtgClient.PassHash, function, parameters);

            var response = await ExecuteRequestAsync(url);

            return(response);
        }
Exemplo n.º 11
0
        internal XDocument ExecuteRequest(XmlFunction function, Parameters.Parameters parameters)
        {
            var url = new PrtgUrl(prtgClient.Server, prtgClient.UserName, prtgClient.PassHash, function, parameters);

            var response = ExecuteRequest(url);

            return(XDocument.Parse(XDocumentHelpers.SanitizeXml(response)));
        }
Exemplo n.º 12
0
        private string GetCustomParameter(Parameters.Parameters parameters, string name)
        {
            var customParameters = ((List <CustomParameter>)parameters.GetParameters()[Parameter.Custom]);

            var targetParameter = customParameters.FirstOrDefault(p => p.Name == name);

            return(targetParameter?.Value?.ToString());
        }
Exemplo n.º 13
0
        internal async Task <XDocument> ExecuteRequestAsync(XmlFunction function, Parameters.Parameters parameters)
        {
            var url = new PrtgUrl(prtgClient.Server, prtgClient.UserName, prtgClient.PassHash, function, parameters);

            var response = await ExecuteRequestAsync(url).ConfigureAwait(false);

            return(XDocument.Parse(XDocumentHelpers.SanitizeXml(response)));
        }
Exemplo n.º 14
0
        internal string ExecuteRequest(CommandFunction function, Parameters.Parameters parameters, Func <HttpResponseMessage, string> responseParser = null)
        {
            var url = new PrtgUrl(prtgClient.Server, prtgClient.UserName, prtgClient.PassHash, function, parameters);

            var response = ExecuteRequest(url, responseParser);

            return(response);
        }
Exemplo n.º 15
0
        internal string ExecuteRequest(HtmlFunction function, Parameters.Parameters parameters)
        {
            var url = new PrtgUrl(prtgClient.Server, prtgClient.UserName, prtgClient.PassHash, function, parameters);

            var response = ExecuteRequest(url);

            return(response);
        }
Exemplo n.º 16
0
        public static void AddParametersToCommand(IDbCommand command, object entity, Parameters.Parameters parameters)
        {
            command.Parameters.Clear();

            foreach (var parameter in parameters)
            {
                if (parameter.Type.If(out var parameterType))
                {
                }
                else
                {
                    parameter.DeterminePropertyType(entity);
                    parameterType  = parameter.PropertyType;
                    parameter.Type = parameterType.Some();
                }

                var sqlParameter = parameter.Size
                                   .Map(size => new SqlParameter(parameter.Name, typeToSqlType(parameterType), size))
                                   .DefaultTo(() => new SqlParameter(parameter.Name, typeToSqlType(parameterType)));

                if (parameter.Output)
                {
                    sqlParameter.Direction = ParameterDirection.Output;
                }
                else if (parameter.Value.If(out var str))
                {
                    if (parameterType == typeof(string))
                    {
                        sqlParameter.Value = str;
                    }
                    else
                    {
                        var obj = str.ToObject().Required($"Couldn't convert {str}");
                        sqlParameter.Value = ChangeType(obj, parameterType);
                    }
                }
                else
                {
                    var value = parameter.GetValue(entity).Required($"Parameter {parameter.Name}'s value couldn't be determined");
                    if (value is null && parameter.Default.If(out var defaultValue))
                    {
                        value = parameter.Type.Map(t => ChangeType(defaultValue, t)).DefaultTo(() => defaultValue);
                    }

                    var type           = value?.GetType();
                    var underlyingType = type?.UnderlyingTypeOf() ?? none <Type>();
                    if (underlyingType.IsSome)
                    {
                        value = type.InvokeMember("Value", BindingFlags.GetProperty, null, value, new object[0]);
                    }

                    sqlParameter.Value = value;
                }

                command.Parameters.Add(sqlParameter);
            }
        }
Exemplo n.º 17
0
        internal async Task <XDocument> ExecuteRequestAsync(XmlFunction function, Parameters.Parameters parameters, Action <string> responseValidator = null)
        {
            var url = GetPrtgUrl(function, parameters);

            var response = await ExecuteRequestAsync(url).ConfigureAwait(false);

            responseValidator?.Invoke(response);

            return(XDocumentHelpers.SanitizeXml(response));
        }
Exemplo n.º 18
0
        internal XDocument ExecuteRequest(XmlFunction function, Parameters.Parameters parameters, Action <string> responseValidator = null)
        {
            var url = GetPrtgUrl(function, parameters);

            var response = ExecuteRequest(url);

            responseValidator?.Invoke(response);

            return(XDocumentHelpers.SanitizeXml(response));
        }
Exemplo n.º 19
0
        public void Parameters_ReplacesCounterpart()
        {
            var parameters = new Parameters.Parameters
            {
                [Parameter.Password] = "password",
                [Parameter.PassHash] = "passhash"
            };

            Assert.AreEqual(1, parameters.GetParameters().Keys.Count);
            Assert.AreEqual(parameters[Parameter.PassHash], "passhash");
            Assert.AreEqual(null, parameters[Parameter.Password]);
        }
Exemplo n.º 20
0
        internal static Parameters.Parameters GetInternalNewObjectParameters(int deviceId, NewObjectParameters parameters)
        {
            var newParams = new Parameters.Parameters();

            foreach (var param in parameters.GetParameters())
            {
                newParams[param.Key] = param.Value;
            }

            newParams[Parameter.Id] = deviceId;

            return(newParams);
        }
Exemplo n.º 21
0
        /// <inheritdoc />
        public void Build(ksDocument3D document3D, Parameters.Parameters parameters)
        {
            var part = (ksPart)document3D.GetPart((short)Part_Type.pTop_Part);

            var entityRotated =
                (ksEntity)part.NewEntity((short)Obj3dType.o3d_baseRotated);
            var entityRotatedDefinition =
                (ksBaseRotatedDefinition)entityRotated.GetDefinition();

            entityRotatedDefinition.directionType = 0;
            entityRotatedDefinition.SetSideParam(true, 360);
            entityRotatedDefinition.SetSketch(part.GetObjectByName("Эскиз:1", 5, false, false));
            entityRotated.Create();
        }
        public IParameters Read(TflTransform transform) {
            var parameters = new Parameters.Parameters(_defaultFactory);

            foreach (var p in transform.Parameters) {
                if (string.IsNullOrEmpty(p.Name)) {
                    return new Parameters.Parameters(_defaultFactory);
                }

                var value = p.HasValue() ? p.Value : null;
                var alias = p.HasValue() ? p.Name : p.Field;
                parameters.Add(alias, p.Name, value, p.Type);
            }

            return parameters;
        }
Exemplo n.º 23
0
        private void SetAndGet(Parameters.Parameters parameters, string property, object value)
        {
            var prop = parameters.GetType().GetProperty(property);

            if (prop == null)
            {
                throw new ArgumentException($"Could not find property '{property}'");
            }

            prop.SetValue(parameters, value);

            var val = prop.GetValue(parameters);

            Assert.AreEqual(value, val);
        }
Exemplo n.º 24
0
        public SqlSetup(ISetupObject setupObject)
        {
            ConnectionString = new SqlConnectionString(setupObject.ConnectionString, 30.Seconds());
            CommandText      = setupObject.CommandSourceType switch
            {
                CommandSourceType.File => ((FileName)setupObject.Command).Text,
                _ => setupObject.Command
            };

            CommandTimeout = setupObject.CommandTimeout;
            Parameters     = new Parameters.Parameters(setupObject.Parameters());
            Fields         = new Fields.Fields(setupObject.Fields());

            attributes = new StringHash <string>(true);
            loadAttributes(setupObject.Attributes);
        }
Exemplo n.º 25
0
        /// <inheritdoc />
        public void Build(ksDocument3D document3D, Parameters.Parameters parameters)
        {
            var extendFeatureParameter = parameters.GetExtendFeatureValue();
            var part = (ksPart)document3D.GetPart((short)Part_Type.pTop_Part);

            switch (extendFeatureParameter.Name)
            {
            case ParameterName.Chamfer:
                CreateChamfer(part, extendFeatureParameter.Value);
                break;

            case ParameterName.Fillet:
                CreateFillet(part, extendFeatureParameter.Value);
                break;
            }
        }
Exemplo n.º 26
0
        public Template(Process process, TflTemplate element, Contents contents) {

            Parameters = new Parameters.Parameters(new DefaultFactory(process.Logger));
            Cache = element.Cache;
            Enabled = element.Enabled;
            Engine = element.Engine;
            Name = element.Name;
            ContentType = element.ContentType.Equals("raw") ? Encoding.Raw : Encoding.Html;
            Contents = contents;

            _process = process;

            _renderedTemplateFile = GetFileName(RENDERED_TEMPLATE_CACHE_FOLDER);
            _renderedTemplateContentExists = TryRead(_renderedTemplateFile, out _renderedTemplateContent);

            _templateFile = GetFileName(TEMPLATE_CACHE_FOLDER);
            _templateContentExists = TryRead(_templateFile, out _templateContent);

        }
Exemplo n.º 27
0
        public override void SetParameters(Parameters.Parameters value)
        {
            var parameters = (ReportPreviewParameter)value;

            _reportPath = parameters.ReportPath;
            _parameters = parameters.Parameters;
            _document   = new ReportDocument();
            _document.Load(_reportPath);
            _document.DataSourceConnections[0].SetConnection(ConfigManager.GetDbServer(), ConfigManager.GetDbName(), true);

            ParameterFields paramFields = new ParameterFields();

            foreach (KeyValuePair <string, object> item in _parameters)
            {
                ParameterField pfItemYr = new ParameterField
                {
                    ParameterFieldName = item.Key                     //Employee ID is Crystal Report Parameter name.
                };

                ParameterDiscreteValue dcItemYr = new ParameterDiscreteValue
                {
                    Value = item.Value
                };

                pfItemYr.CurrentValues.Add(dcItemYr);

                paramFields.Add(pfItemYr);



                //_document.SetParameterValue(item.Key, item.Value);
            }
            crystalReportViewer1.ParameterFieldInfo = paramFields;
            crystalReportViewer1.ReportSource       = _document;
            //crystalReportViewer1.RefreshReport();
            //crystalReportViewer1.Refresh();
        }
Exemplo n.º 28
0
        public SqlSetup(Group setupGroup)
        {
            var connectionGroup = setupGroup.RequireGroup("connection").ForceValue();
            var connection      = new Connection(connectionGroup);

            ConnectionString = new SqlConnectionString(connection);

            var commandGroup = setupGroup.RequireGroup("command").ForceValue();
            var command      = new Command(commandGroup);

            CommandText    = command.Text;
            CommandTimeout = command.CommandTimeout;

            var parametersGroup = setupGroup.GetGroup("parameters");

            Parameters = new Parameters.Parameters(parametersGroup);

            var fieldsGroup = setupGroup.GetGroup("fields");

            Fields = new Fields.Fields(fieldsGroup);

            attributes = new StringHash <string>(true);
            loadAttributes(setupGroup.GetGroup("attributes"));
        }
Exemplo n.º 29
0
        public override void AddParameters(object entity, Parameters.Parameters parameters)
        {
            Command.Required("Command has not be set").Parameters.Clear();

            foreach (var parameter in parameters)
            {
                if (parameter.Type.If(out var parameterType))
                {
                }
                else
                {
                    parameter.DeterminePropertyType(entity);
                    parameterType  = parameter.PropertyType;
                    parameter.Type = parameterType.Some();
                }

                var oledbParameter = parameter.Size
                                     .Map(size => new OleDbParameter(parameter.Name, typeToOleDbType(parameterType), size))
                                     .DefaultTo(() => new OleDbParameter(parameter.Name, typeToDBType(parameterType)));

                if (parameter.Output)
                {
                    oledbParameter.Direction = ParameterDirection.Output;
                }
                else if (parameter.Value.If(out var str))
                {
                    if (parameterType == typeof(string))
                    {
                        oledbParameter.Value = str;
                    }
                    else
                    {
                        var obj = str.ToObject().Required($"Couldn't convert {str}");
                        oledbParameter.Value = ChangeType(obj, parameterType);
                    }
                }
                else
                {
                    var value = parameter.GetValue(entity).Required($"Parameter {parameter.Name}'s value couldn't be determined");
                    if (value is null && parameter.Default.If(out var defaultValue))
                    {
                        value = parameter.Type.Map(t => ChangeType(defaultValue, t)).DefaultTo(() => defaultValue);
                    }

                    var type           = value?.GetType();
                    var underlyingType = type?.UnderlyingTypeOf() ?? none <Type>();
                    if (underlyingType.IsSome)
                    {
                        value = type.InvokeMember("Value", BindingFlags.GetProperty, null, value, new object[0]);
                    }

                    oledbParameter.Value = value;
                }

                if (Command.If(out var command))
                {
                    command.Parameters.Add(oledbParameter);
                }
                else
                {
                    throw "Command not initialized".Throws();
                }
            }
        }
Exemplo n.º 30
0
 //constructor
 public Process(string name, ILogger logger) {
     View = Common.DefaultValue;
     Star = Common.DefaultValue;
     Connections = new Connections();
     PipelineThreading = PipelineThreading.MultiThreaded;
     Enabled = true;
     TransformOperations = new List<IOperation>();
     Parallel = true;
     LogRows = 10000;
     Complete = false;
     Logger = logger;
     Name = name;
     DataSets = new Dictionary<string, List<Row>>();
     Parameters = new Parameters.Parameters(new DefaultFactory(logger));
     Runner = new NullRunner();
 }
Exemplo n.º 31
0
        internal XElement ExecuteRequest(HtmlFunction function, Parameters.Parameters parameters, Func <string, XElement> xmlParser)
        {
            var response = ExecuteRequest(function, parameters);

            return(xmlParser(response));
        }
Exemplo n.º 32
0
        internal async Task <XElement> ExecuteRequestAsync(HtmlFunction function, Parameters.Parameters parameters, Func <string, XElement> xmlParser)
        {
            var response = await ExecuteRequestAsync(function, parameters).ConfigureAwait(false);

            return(xmlParser(response));
        }
Exemplo n.º 33
0
 public override void SetParameters(Parameters.Parameters value)
 {
     _pacient = ((NovyReceptParameters)value).Pacient;
 }
Exemplo n.º 34
0
        internal async Task ExecuteRequestAsync(CommandFunction function, Parameters.Parameters parameters)
        {
            var url = new PrtgUrl(prtgClient.Server, prtgClient.UserName, prtgClient.PassHash, function, parameters);

            var response = await ExecuteRequestAsync(url).ConfigureAwait(false);
        }
Exemplo n.º 35
0
 public override void AddParameters(object entity, Parameters.Parameters parameters)
 {
     SqlDataSource.AddParametersToCommand(Command.Required("Command hasn't been set"), entity, parameters);
 }