public string Patch(Guid UUID)
        {
            WorkflowDTO workflowSelected = context.WorkFlow.Find(UUID);

            workflowSelected.Status = StatusWF.Consumed;
            context.WorkFlow.Update(workflowSelected);
            context.SaveChanges();

            return("Successo");
        }
Exemple #2
0
        public void Store()
        {
            DataConnector dataConnector = new DataConnector();

            dataConnector.OpenConnection("mySql");

            WorkflowDAO workflowDAO = new WorkflowDAO(dataConnector.MySqlConnection);
            ElementDAO  elementDAO  = new ElementDAO(dataConnector.MySqlConnection);
            RelationDAO relationDAO = new RelationDAO(dataConnector.MySqlConnection);

            WorkflowDTO workflowDTO = new WorkflowDTO();

            workflowDTO.id   = this.id;
            workflowDTO.name = this.name;
            if (this.startElement != null)
            {
                workflowDTO.startElement = this.startElement.id;
            }
            if (this.finishElement != null)
            {
                workflowDTO.finishElement = this.finishElement.id;
            }
            this.id = (int)workflowDAO.StoreWorkflow(workflowDTO);

            foreach (FlowElement element in elements)
            {
                ElementDTO elementDTO = new ElementDTO();
                elementDTO.id          = element.id;
                elementDTO.owner       = this.id;
                elementDTO.name        = element.name;
                elementDTO.enabled     = element.enabled;
                elementDTO.elementType = element.elementType;

                elementDAO.StoreElement(elementDTO);
            }

            foreach (Relation relation in relations)
            {
                RelationDTO relationDTO = new RelationDTO();
                relationDTO.origin      = relation.origin.id;
                relationDTO.destinarion = relation.destination.id;

                relationDAO.StoreRelation(relationDTO);
            }

            dataConnector.CloseConnection();
        }
Exemple #3
0
        public Int64 StoreWorkflow(WorkflowDTO workflow)
        {
            String commandText = "INSERT INTO `flowManager`.`workflow` VALUES(null, '" + workflow.name + "', " + workflow.startElement + ", " + workflow.finishElement + ")";

            if (workflow.id != 0)
            {
                commandText = "UPDATE `flowManager`.`workflow` SET name = '" + workflow.name + "', startElement = " + workflow.startElement + ", finishElement = " + workflow.finishElement + " WHERE id = " + workflow.id;
            }
            commandText = commandText + ';' + Environment.NewLine + "SELECT LAST_INSERT_ID()";

            MySqlCommand command  = new MySqlCommand(commandText, this.mySqlConnection);
            Int64        insertId = (Int64)command.ExecuteScalar();

            if (workflow.id != 0)
            {
                insertId = workflow.id;
            }

            return(insertId);
        }
Exemple #4
0
        public List <WorkflowDTO> RetrieveWorkflows(String filter)
        {
            List <WorkflowDTO> workflowList = new List <WorkflowDTO>();

            String          query      = "SELECT * FROM `flowManager`.`workflow`";
            MySqlCommand    command    = new MySqlCommand(query, this.mySqlConnection);
            MySqlDataReader dataReader = command.ExecuteReader();

            while (dataReader.Read())
            {
                WorkflowDTO workflow = new WorkflowDTO();
                workflow.id            = (int)dataReader["id"];
                workflow.name          = (String)dataReader["name"];
                workflow.startElement  = (int)dataReader["startElement"];
                workflow.finishElement = (int)dataReader["finishElement"];

                workflowList.Add(workflow);
            }
            dataReader.Close();

            return(workflowList);
        }
        public HttpResponseMessage Consume(int id)
        {
            MemoryStream stream = new MemoryStream();
            StreamWriter writer = new StreamWriter(stream);

            string data = MessageHandler.Receive(MYQUEUE);

            WorkflowDTO workflowSelected = context.WorkFlow.Find(Guid.Parse(data));

            writer.Write(workflowSelected.Data);
            writer.Flush();
            stream.Position = 0;

            HttpResponseMessage result = new HttpResponseMessage(HttpStatusCode.OK);

            result.Content = new StreamContent(stream);
            result.Content.Headers.ContentType        = new MediaTypeHeaderValue("text/csv");
            result.Content.Headers.ContentDisposition = new ContentDispositionHeaderValue("attachment")
            {
                FileName = "Export.csv"
            };
            return(result);
        }