Beispiel #1
0
        getObjectRequest(Reference @ref)
        {
            if (@ref.getInstance().traceLevels().location >= 1)
            {
                Instance instance           = @ref.getInstance();
                System.Text.StringBuilder s = new System.Text.StringBuilder();
                s.Append("searching for well-known object\nwell-known proxy = ");
                s.Append(@ref.ToString());
                instance.initializationData().logger.trace(instance.traceLevels().locationCat, s.ToString());
            }

            lock (this)
            {
                Request request;
                if (_objectRequests.TryGetValue(@ref.getIdentity(), out request))
                {
                    return(request);
                }

                request = new ObjectRequest(this, @ref);
                _objectRequests.Add(@ref.getIdentity(), request);
                return(request);
            }
        }
Beispiel #2
0
        getObjectRequest(Reference reference)
        {
            if (reference.getCommunicator().traceLevels().location >= 1)
            {
                var communicator            = reference.getCommunicator();
                System.Text.StringBuilder s = new System.Text.StringBuilder();
                s.Append("searching for well-known object\nwell-known proxy = ");
                s.Append(reference.ToString());
                communicator.initializationData().logger.trace(communicator.traceLevels().locationCat, s.ToString());
            }

            lock (this)
            {
                Request request;
                if (_objectRequests.TryGetValue(reference.getIdentity(), out request))
                {
                    return(request);
                }

                request = new ObjectRequest(this, reference);
                _objectRequests.Add(reference.getIdentity(), request);
                return(request);
            }
        }
Beispiel #3
0
        public async Task <IActionResult> CreateResponse(ObjectRequest obj)
        {
            try
            {
                if (obj.Data != null)
                {
                    return(await Task.FromResult(Ok(new
                    {
                        data = obj.Data,
                        succes = obj.Success
                    })));
                }

                return(await Task.FromResult(Ok(new
                {
                    success = obj.Success,
                    error = obj.Errors
                })));
            }
            catch
            {
                throw;
            }
        }
Beispiel #4
0
        getObjectRequest(Reference @ref)
        {
            if(@ref.getInstance().traceLevels().location >= 1)
            {
                Instance instance = @ref.getInstance();
                System.Text.StringBuilder s = new System.Text.StringBuilder();
                s.Append("searching for object by id\nobject = ");
                s.Append(instance.identityToString(@ref.getIdentity()));
                instance.initializationData().logger.trace(instance.traceLevels().locationCat, s.ToString());
            }

            lock(this)
            {
                Request request;
                if(_objectRequests.TryGetValue(@ref.getIdentity(), out request))
                {
                    return request;
                }
                
                request = new ObjectRequest(this, @ref);
                _objectRequests.Add(@ref.getIdentity(), request);
                return request;
            }
        }
        public IActionResult Post([FromBody] ObjectRequest oRequest)
        {
            sStatus = "001";
            TB_Usuario oUsuario = null;
            ConfigInfo oInfor   = Util.ProjectInfo();
            JObject    _DsJson  = new JObject();

            try
            {
                string ApiToken = Util.ValidarEntrada(HttpContext.Request.Headers["Authorization"].ToString());
                if (Util.IsNull(ApiToken))
                {
                    sStatus    = "901";
                    sDescricao = "Atributo do Headers 'Authorization' é obrigatório.";
                }
                else
                {
                    if (ApiToken != oInfor.Api_Key)
                    {
                        sStatus    = "902";
                        sDescricao = "Atributo do Headers 'Authorization' não é válido.";
                    }
                }
            }
            catch
            {
                sStatus    = "999";
                sDescricao = "Erro inesperado.";
            }

            if (sStatus == "001")
            {
                try
                {
                    sRequestType = oRequest.RequestType.ToUpper();
                }
                catch
                {
                    sStatus    = "903";
                    sDescricao = "Atributo do Body 'RequestType' é obrigatório.";
                }
            }

            if (sStatus == "001")
            {
                try { sRequestObject = oRequest.RequestObject; } catch { }
            }

            if (sStatus == "001")
            {
                try
                {
                    if (!Util.IsNull(sRequestObject))
                    {
                        sRequestObject = Util.FormatarHtml(sRequestObject);
                        oUsuario       = JsonConvert.DeserializeObject <TB_Usuario>(sRequestObject);
                    }
                }
                catch
                {
                    sStatus    = "904";
                    sDescricao = "Atributo do Body 'RequestObject' é obrigatório.";
                }
            }

            if (sStatus == "001")
            {
                sId = "0";
                try
                {
                    switch (sRequestType)
                    {
                    case "CADASTRAR":
                    {
                        _DsJson = Proc.UsuarioCadastrar(oUsuario);
                        try { sId = _DsJson["Retorno"]["Id"].ToString(); } catch { }
                        try { sStatus = _DsJson["Retorno"]["Status"].ToString(); } catch { }
                        try { sDescricao = _DsJson["Retorno"]["Descricao"].ToString(); } catch { }
                    }
                    break;

                    case "ATUALIZAR":
                    {
                        _DsJson = Proc.UsuarioAtualizar(oUsuario);
                        try { sId = _DsJson["Retorno"]["Id"].ToString(); } catch { }
                        try { sStatus = _DsJson["Retorno"]["Status"].ToString(); } catch { }
                        try { sDescricao = _DsJson["Retorno"]["Descricao"].ToString(); } catch { }
                    }
                    break;

                    case "LISTAR":
                    {
                        _DsJson = Proc.UsuarioListar(oUsuario);
                        try { sStatus = _DsJson["Retorno"]["Status"].ToString(); } catch { }
                        try { sDescricao = _DsJson["Retorno"]["Descricao"].ToString(); } catch { }
                        try { sDados = _DsJson["Dados"].ToString(); } catch { }
                    }
                    break;

                    default:
                    {
                        sStatus    = "904";
                        sDescricao = "Atributo do Body 'RequestType' não é válido.";
                    }
                    break;
                    }
                }
                catch
                {
                    sStatus    = "999";
                    sDescricao = "Erro inesperado.";
                }
            }

            //=========================================================================================
            if ((sStatus != "000") && (sStatus != "001"))
            {
                sDados = "";
            }
            //=========================================================================================
            string sjReturn = "";

            sjReturn += "{ ";
            sjReturn += "\"Retorno\": { ";
            if (sId != "0")
            {
                sjReturn += "\"Id\": \"" + sId + "\", ";
            }
            sjReturn += "\"Status\": \"" + sStatus + "\", ";
            sjReturn += "\"Descricao\": \"" + sDescricao + "\" ";
            if (!Util.IsNull(sDados))
            {
                sjReturn += "}, ";
                sjReturn += "\"Dados\": " + sDados;
            }
            else
            {
                sjReturn += "} ";
            }
            sjReturn += "} ";
            //=========================================================================================
            return(Content(sjReturn));
            //=========================================================================================
        }
Beispiel #6
0
        public T ExecuteAndUnpack <T>(ObjectRequest request) where T : new()
        {
            var response = ExecuteSuccessfully <ObjectResponse <T> >(request);

            return(response.Data);
        }