小菜鸟一步步打造图书馆外挂之十四:GetDoWorkFactory工厂的实现
     该工厂就是产生该系统在不同情况下的工作对象,实现很简单,就是有一个对ILibraryHelperDoWork接口的引用,再根据不同入口启动和网络连接状况来实例化具体对象,在连接网络之后要调用Ping命令去Ping学校图书馆服务器看看是否可以连接。
创建工程IDoWorkFactory,添加一个类GetDoWorkFactory,代码如下:
 using System;
using System; using System.Collections.Generic;
using System.Collections.Generic; using System.Text;
using System.Text;
 using LibraryHelper.IDoWork;
using LibraryHelper.IDoWork; using LibraryHelper.DoWork;
using LibraryHelper.DoWork; using LibraryHelper.ADSLService;
using LibraryHelper.ADSLService; using LibraryHelper.DALService;
using LibraryHelper.DALService; using LibraryHelper.HttpService;
using LibraryHelper.HttpService;
 namespace LibraryHelper.IDoWorkFactory
namespace LibraryHelper.IDoWorkFactory {
{ public class GetDoWorkFactory
    public class GetDoWorkFactory {
    { public static ILibraryHelperDoWork CreateDowork(String startType)
        public static ILibraryHelperDoWork CreateDowork(String startType) {
        { ILibraryHelperDoWork doWork = null;
            ILibraryHelperDoWork doWork = null;
 ADSL adsl = new ADSL();
            ADSL adsl = new ADSL(); ADSLXMLService adslXMLService = new ADSLXMLService();
            ADSLXMLService adslXMLService = new ADSLXMLService(); //连接
            //连接 adsl.Connect(adslXMLService.GetConnectionName(), adslXMLService.GetUserName(), adslXMLService.GetUserPassword());
            adsl.Connect(adslXMLService.GetConnectionName(), adslXMLService.GetUserName(), adslXMLService.GetUserPassword()); //Ping连接结果,些IP地址为图书馆IP地址
            //Ping连接结果,些IP地址为图书馆IP地址 Boolean adslStatu = adsl.ConnnectState("Ping 210.46.107.20");
            Boolean adslStatu = adsl.ConnnectState("Ping 210.46.107.20");
 if (adslStatu)
            if (adslStatu) {
            { if (startType == "AUTO")
                if (startType == "AUTO") {
                { doWork = new HttpSendToWarningUI();
                    doWork = new HttpSendToWarningUI(); }
                } else if (startType == "Common")
                else if (startType == "Common") {
                { doWork = new HttpSendToEditUI();
                    doWork = new HttpSendToEditUI(); }
                } }
            } else
            else {
            { if (startType == "AUTO")
                if (startType == "AUTO") {
                { doWork = new GetBookFromXMl();
                    doWork = new GetBookFromXMl(); }
                } else
                else {
                { doWork = new DoNothing();
                    doWork = new DoNothing(); }
                } }
            }
 return doWork;
            return doWork; }
        } }
    } }
}
 
                     
                    
                 
                    
                


 
     
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号