Esempio n. 1
0
        public ServiceResponseData InvokeWcfService(string wcfpluginname, string wcfcontroller, string wcfmethod, Action <ClientRequestData> requestAction)
        {
            ClientLink          wcfClientLink = ClientLinkManage.CreateConnection(wcfpluginname);
            ServiceResponseData retData       = wcfClientLink.Request(wcfcontroller, wcfmethod, requestAction);

            return(retData);
        }
Esempio n. 2
0
        private void InitTreePlugin()
        {
            treePlugin.Nodes.Clear();
            plist = ClientLinkManage.CreateConnection("Test").GetWcfServicesAllInfo();

            cbplugin.ValueMember   = "pluginname";
            cbplugin.DisplayMember = "pluginname";
            cbplugin.DataSource    = plist;
            foreach (var p in plist)
            {
                TreeNode root = new TreeNode(p.pluginname);
                root.ImageIndex         = 0;
                root.SelectedImageIndex = 0;
                foreach (var c in p.controllerlist)
                {
                    TreeNode ctn = new TreeNode(c.controllername);
                    ctn.ImageIndex         = 1;
                    ctn.SelectedImageIndex = 1;
                    foreach (var m in c.methodlist)
                    {
                        TreeNode mtn = new TreeNode(m);
                        mtn.ImageIndex         = 2;
                        mtn.SelectedImageIndex = 2;
                        mtn.Tag = p.pluginname + "#" + c.controllername + "#" + m;
                        ctn.Nodes.Add(mtn);
                    }
                    root.Nodes.Add(ctn);
                }
                treePlugin.Nodes.Add(root);
            }
        }
Esempio n. 3
0
 private ServiceResponseData InvokeWcfService(string wcfpluginname, string wcfcontroller, string wcfmethod, Action<ClientRequestData> requestAction)
 {
     ClientLink wcfClientLink = ClientLinkManage.CreateConnection("localendpoint", wcfpluginname);
     //绑定LoginRight
     Action<ClientRequestData> _requestAction = ((ClientRequestData request) =>
     {
         request.LoginRight = new EFWCoreLib.CoreFrame.Business.SysLoginRight();
         if (requestAction != null)
             requestAction(request);
     });
     ServiceResponseData retData = wcfClientLink.Request(wcfcontroller, wcfmethod, _requestAction);
     return retData;
 }
Esempio n. 4
0
        public IAsyncResult InvokeWcfServiceAsync(string wcfpluginname, string wcfcontroller, string wcfmethod, Action <ClientRequestData> requestAction, Action <ServiceResponseData> responseAction)
        {
            ClientLink wcfClientLink = ClientLinkManage.CreateConnection(wcfpluginname);
            //绑定LoginRight
            Action <ClientRequestData> _requestAction = ((ClientRequestData request) =>
            {
                request.LoginRight = LoginUserInfo;
                if (requestAction != null)
                {
                    requestAction(request);
                }
            });

            return(wcfClientLink.RequestAsync(wcfcontroller, wcfmethod, _requestAction, responseAction));
        }
Esempio n. 5
0
        public static ServiceResponseData InvokeWcfService(string wcfpluginname, string wcfcontroller, string wcfmethod, Action <ClientRequestData> requestAction)
        {
            ClientLink wcfClientLink = ClientLinkManage.CreateConnection(wcfpluginname);
            //绑定LoginRight
            Action <ClientRequestData> _requestAction = ((ClientRequestData request) =>
            {
                request.LoginRight = new EFWCoreLib.CoreFrame.Business.SysLoginRight();
                request.LoginRight.WorkId = _WorkId;
                if (requestAction != null)
                {
                    requestAction(request);
                }
            });
            ServiceResponseData retData = wcfClientLink.Request(wcfcontroller, wcfmethod, _requestAction);

            return(retData);
        }
        public Object GetAllServices()
        {
            try
            {
                //string data= WebApiGlobal.normalIPC.CallCmd(IPCName.GetProcessName(IPCType.efwplusBase), "getallservices", null);
                //List<WcfFrame.ServerManage.dwPlugin> plist = JsonConvert.DeserializeObject<List<WcfFrame.ServerManage.dwPlugin>>(data);
                List <dwPlugin> plist = ClientLinkManage.CreateConnection("Test").GetWcfServicesAllInfo();

                List <amazeuitreenode> tree = new List <amazeuitreenode>();
                foreach (var p in plist)
                {
                    amazeuitreenode nodep = new amazeuitreenode();
                    nodep.title  = p.pluginname;
                    nodep.type   = "folder";
                    nodep.childs = new List <amazeuitreenode>();
                    tree.Add(nodep);
                    foreach (var c in p.controllerlist)
                    {
                        amazeuitreenode nodec = new amazeuitreenode();
                        nodec.title  = c.controllername;
                        nodec.type   = "folder";
                        nodec.childs = new List <amazeuitreenode>();
                        nodep.childs.Add(nodec);

                        foreach (var m in c.methodlist)
                        {
                            amazeuitreenode nodem = new amazeuitreenode();
                            nodem.title = m;
                            nodem.type  = "item";
                            nodem.attr  = new Dictionary <string, string>();
                            nodem.attr.Add("plugin", p.pluginname);
                            nodem.attr.Add("controller", c.controllername);
                            nodem.attr.Add("method", m);
                            nodec.childs.Add(nodem);
                        }
                    }
                }
                return(tree);
            }
            catch (Exception e)
            {
                throw e;
            }
        }
Esempio n. 7
0
        public Object GetAllServices()
        {
            try
            {
                List <dwPlugin> plist = ClientLinkManage.CreateConnection("Test").GetWcfServicesAllInfo();

                List <amazeuitreenode> tree = new List <amazeuitreenode>();
                foreach (var p in plist)
                {
                    amazeuitreenode nodep = new amazeuitreenode();
                    nodep.title  = p.pluginname;
                    nodep.type   = "folder";
                    nodep.childs = new List <amazeuitreenode>();
                    tree.Add(nodep);
                    foreach (var c in p.controllerlist)
                    {
                        amazeuitreenode nodec = new amazeuitreenode();
                        nodec.title  = c.controllername;
                        nodec.type   = "folder";
                        nodec.childs = new List <amazeuitreenode>();
                        nodep.childs.Add(nodec);

                        foreach (var m in c.methodlist)
                        {
                            amazeuitreenode nodem = new amazeuitreenode();
                            nodem.title = m;
                            nodem.type  = "item";
                            nodem.attr  = new Dictionary <string, string>();
                            nodem.attr.Add("plugin", p.pluginname);
                            nodem.attr.Add("controller", c.controllername);
                            nodem.attr.Add("method", m);
                            nodec.childs.Add(nodem);
                        }
                    }
                }
                return(tree);
            }
            catch (Exception e)
            {
                throw e;
            }
        }
Esempio n. 8
0
 private void btnRequest_Click(object sender, EventArgs e)
 {
     try
     {
         btnRequest.Enabled = false;
         ServiceResponseData retjson = ClientLinkManage.CreateConnection(cbplugin.Text).Request(string.Format("{0}", cbcontroller.Text), cbmothed.Text,
                                                                                                (ClientRequestData request) =>
         {
             request.SetJsonData(txtparams.Text.Trim());
         });
         txtResult.Text = retjson.GetJsonData();
     }
     catch (Exception err)
     {
         MessageBox.Show(err.Message, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
     }
     finally
     {
         btnRequest.Enabled = true;
     }
 }
Esempio n. 9
0
 private void FrmTest_FormClosed(object sender, FormClosedEventArgs e)
 {
     //5.关闭连接
     ClientLinkManage.UnAllConnection();
 }
Esempio n. 10
0
        static string ExecuteCmd(string m, Dictionary <string, string> a)
        {
            string retData = "succeed";

            try
            {
                switch (m)
                {
                case "stop":
                    WcfGlobal.ExitBase();
                    break;

                case "start":
                    WcfGlobal.MainBase(WcfGlobal.Identify);
                    break;

                case "close":
                    Environment.Exit(0);
                    break;

                case "getmnodeconfig":    //获取节点配置对象
                    retData = EFWCoreLib.CoreFrame.Init.HostRunConfigInfo.GetConfigSubject();
                    break;

                case "getmnodetext":    //获取节点配置文本信息
                    retData = EFWCoreLib.CoreFrame.Init.HostRunConfigInfo.GetConfigText();
                    break;

                case "initmonitor":    //初始化监控平台的默认登录用户
                    EFWCoreLib.WcfFrame.Utility.MonitorPlatform.MonitorPlatformManage.Init();
                    break;

                case "ssosignin":    //单点登录
                    EFWCoreLib.CoreFrame.SSO.UserInfo userInfo = new EFWCoreLib.CoreFrame.SSO.UserInfo();
                    userInfo.UserCode = a["usercode"];
                    userInfo.EmpName  = a["username"];
                    string token;
                    EFWCoreLib.CoreFrame.SSO.SsoHelper.SignIn(userInfo, out token);
                    retData = token;
                    break;

                case "ssosignout":    //单点登录退出
                    EFWCoreLib.CoreFrame.SSO.SsoHelper.SignOut(a["token"]);
                    break;

                case "ssovalidatetoken":    //单点登录验证
                    EFWCoreLib.CoreFrame.SSO.AuthResult ar = EFWCoreLib.CoreFrame.SSO.SsoHelper.ValidateToken(a["token"]);
                    retData = JsonConvert.SerializeObject(ar);
                    break;

                case "clientlist":    //获取节点客户端列表
                    retData = JsonConvert.SerializeObject(EFWCoreLib.WcfFrame.ServerManage.ClientManage.ClientDic.Values.ToList());
                    break;

                case "sevicelist":    //本地插件
                    retData = JsonConvert.SerializeObject(EFWCoreLib.WcfFrame.ServerManage.RemotePluginManage.GetLocalPlugin());
                    break;

                case "debuglog":
                    retData = MiddlewareLogHelper.ReadFile(a["logtype"], a["date"]);
                    break;

                case "getmnodetree":    //获取节点状态树
                    retData = JsonConvert.SerializeObject(EFWCoreLib.WcfFrame.ServerManage.MNodeStateManage.GetMNodeTree());
                    break;

                case "getallservices":    //获取本地所有服务
                    List <dwPlugin> plist = ClientLinkManage.CreateConnection("Test").GetWcfServicesAllInfo();
                    retData = JsonConvert.SerializeObject(plist);
                    break;

                case "gettasklist":    //获取任务列表
                    List <TaskConfig> tasklist = TaskConfigManage.LoadXML();
                    retData = JsonConvert.SerializeObject(tasklist);
                    break;

                case "getmachinecode":    //获取机器码
                    retData = TimeCDKEY.GetCpuId();
                    break;

                case "activateregcode":    //激活注册码
                    retData = TimeCDKEY.ActivateRegCode(a["regcode"]) ? "true" : "false";
                    break;

                case "rootremotecommand":    //远程命令
                    retData = EFWCoreLib.WcfFrame.ServerManage.DataManage.RootRemoteCommand(a["identify"], a["eprocess"], a["method"], a["arg"]);
                    break;

                case "createregcode":    //生成注册码
                    retData = Encryption.EncryPW(TimeCDKEY.CreatSerialNumber(a["identify"], a["machinecode"], a["regdate"]), "kakake888");
                    break;
                }
                ShowMsg(Color.Black, DateTime.Now, "efwplusBase命令执行完成:" + m);
                retData = retData.Substring(0, retData.Length > 5000 ? 5000 : retData.Length);
                return(retData);
            }
            catch (Exception e)
            {
                retData = e.Message;
                return(retData);
            }
        }
Esempio n. 11
0
        public IAsyncResult InvokeWcfServiceAsync(string wcfpluginname, string wcfcontroller, string wcfmethod, Action <ClientRequestData> requestAction, Action <ServiceResponseData> responseAction)
        {
            ClientLink wcfClientLink = ClientLinkManage.CreateConnection(wcfpluginname);

            return(wcfClientLink.RequestAsync(wcfcontroller, wcfmethod, requestAction, responseAction));
        }