/// <summary>
        /// Az itt megvalósított Operation tagfüggvény a megszokottól eltérően működik, service hívást végezve határozza meg az adott visszatérési értéket
        /// </summary>
        /// <param name="container">A lekérendő adathalmaz jelölése</param>
        /// <param name="whereClosure">WHERE lezártban meghatározott szűrési feltételek</param>
        /// <param name="orderByClosure">ORDER BY lezártban meghatározott rendezési feltételek</param>
        /// <example>
        /// <code>
        /// get from [Workforce] where "id=5"
        /// </code>
        /// </example>
        /// <returns>Egy lekérdezés végleges visszatérési értéke</returns>
        private object SpecialOperation(List<string> container, List<string> whereClosure, List<string> orderByClosure)
        {
            try
            {
                List<string> retVal = null;
                // service hívás                
                foreach (string s in container)
                {
                    if (s.Equals("Processes"))
                    {
                        var mcl = new WoLaDLL.ManagerService.ManagerServiceClient();
                        mcl.ClientCredentials.UserName.UserName = "******";
                        mcl.ClientCredentials.UserName.Password = "******";
                        var processes = mcl.ListProcesses();

                        List<string> lst = new List<string>();
                        foreach (var o in processes)
                        {
                            lst.Add(o.Id + " " +  o.Name);
                        }
                        return lst;
                    }
                    else if (s.Equals("Instances"))
                    {
                        var ecl = new WoLaDLL.EngineService.EngineServiceClient();
                        ecl.ClientCredentials.UserName.UserName = "******";
                        ecl.ClientCredentials.UserName.Password = "******";

                        var instances = ecl.GetProcessInstances(whereClosure[0] == null ? -1 : Int32.Parse(whereClosure[0]));
                        
                        List<string> lst = new List<string>();
                        foreach (var o in instances)
                        {
                            lst.Add(o.Id.ToString() + " " + o.TemplateProcessName + " " + o.ProcessState);
                        }
                        return lst;
                    }
                    else if (s.Equals("Skills"))
                    {
                        var mcl = new WoLaDLL.ManagerService.ManagerServiceClient();
                        mcl.ClientCredentials.UserName.UserName = "******";
                        mcl.ClientCredentials.UserName.Password = "******";
                        var skills = mcl.ListSkills();

                        List<string> lst = new List<string>();
                        foreach (var o in skills)
                        {
                            lst.Add(o.Id + " " + o.Name);
                        }
                        return lst;
                    }
                }

                //var retVal = client.GetWorkforceByWhereClauseAndSorting(whereClosure == null ? null : whereClosure, orderByClosure == null ? null : orderByClosure);

                return retVal;
            }
            catch (Exception exc)
            {
                Console.WriteLine("EXCEPTION -> " + exc.Message);
                string ERROR = "ERROR : " + exc.Message;
                return ERROR;
            }
        }
Beispiel #2
0
        /// <summary>
        /// Az itt megvalósított Operation tagfüggvény a megszokottól eltérően működik, service hívást végezve határozza meg az adott visszatérési értéket
        /// </summary>
        /// <param name="container">A lekérendő adathalmaz jelölése</param>
        /// <param name="whereClosure">WHERE lezártban meghatározott szűrési feltételek</param>
        /// <param name="orderByClosure">ORDER BY lezártban meghatározott rendezési feltételek</param>
        /// <example>
        /// <code>
        /// get from [Workforce] where "id=5"
        /// </code>
        /// </example>
        /// <returns>Egy lekérdezés végleges visszatérési értéke</returns>
        private object SpecialOperation(List <string> container, List <string> whereClosure, List <string> orderByClosure)
        {
            try
            {
                List <string> retVal = null;
                // service hívás
                foreach (string s in container)
                {
                    if (s.Equals("Processes"))
                    {
                        var mcl = new WoLaDLL.ManagerService.ManagerServiceClient();
                        mcl.ClientCredentials.UserName.UserName = "******";
                        mcl.ClientCredentials.UserName.Password = "******";
                        var processes = mcl.ListProcesses();

                        List <string> lst = new List <string>();
                        foreach (var o in processes)
                        {
                            lst.Add(o.Id + " " + o.Name);
                        }
                        return(lst);
                    }
                    else if (s.Equals("Instances"))
                    {
                        var ecl = new WoLaDLL.EngineService.EngineServiceClient();
                        ecl.ClientCredentials.UserName.UserName = "******";
                        ecl.ClientCredentials.UserName.Password = "******";

                        var instances = ecl.GetProcessInstances(whereClosure[0] == null ? -1 : Int32.Parse(whereClosure[0]));

                        List <string> lst = new List <string>();
                        foreach (var o in instances)
                        {
                            lst.Add(o.Id.ToString() + " " + o.TemplateProcessName + " " + o.ProcessState);
                        }
                        return(lst);
                    }
                    else if (s.Equals("Skills"))
                    {
                        var mcl = new WoLaDLL.ManagerService.ManagerServiceClient();
                        mcl.ClientCredentials.UserName.UserName = "******";
                        mcl.ClientCredentials.UserName.Password = "******";
                        var skills = mcl.ListSkills();

                        List <string> lst = new List <string>();
                        foreach (var o in skills)
                        {
                            lst.Add(o.Id + " " + o.Name);
                        }
                        return(lst);
                    }
                }

                //var retVal = client.GetWorkforceByWhereClauseAndSorting(whereClosure == null ? null : whereClosure, orderByClosure == null ? null : orderByClosure);

                return(retVal);
            }
            catch (Exception exc)
            {
                Console.WriteLine("EXCEPTION -> " + exc.Message);
                string ERROR = "ERROR : " + exc.Message;
                return(ERROR);
            }
        }