示例#1
0
        //public static string WebServiceURL = "https://ruckzuck.azurewebsites.net/wcf/RZService.svc";

        //private DateTime dLastTokenRefresh = new DateTime();

        /// <summary>
        /// Initialize the RuckZuck Web-Service
        /// </summary>
        /// <param name="request"></param>
        private void _initRZ(Request request)
        {
            //try
            //{
            //    Properties.Settings.Default.Location = "";
            //    Properties.Settings.Default.Save();

            //    if (Properties.Settings.Default.Location.StartsWith("https:"))
            //    {
            //        RZRestAPIv2.sURL = Properties.Settings.Default.Location;
            //    }
            //    else
            //    {
            //        Properties.Settings.Default.Location = RZRestAPIv2.sURL;
            //        Properties.Settings.Default.Save();
            //    }
            //}
            //catch { }

            RZRestAPIv2.sURL.ToString(); //get REST API URL

            request.Debug("RZ Endpoint: " + RZRestAPIv2.sURL);

            oScan   = new RZScan(false, false);
            oUpdate = new RZUpdate.RZUpdater();
        }
示例#2
0
        //private DateTime dLastTokenRefresh = new DateTime();

        /// <summary>
        /// Initialize the RuckZuck Web-Service
        /// </summary>
        /// <param name="request"></param>
        private void _initRZ(Request request)
        {
            try
            {
                Properties.Settings.Default.Location = "";
                Properties.Settings.Default.Save();

                if (Properties.Settings.Default.Location.StartsWith("https:"))
                {
                    RZRestAPI.sURL = Properties.Settings.Default.Location;
                }
                else
                {
                    Properties.Settings.Default.Location = RZRestAPI.sURL;
                    Properties.Settings.Default.Save();
                }

                //_reAuthenticate(request);

                oScan = new RZUpdate.RZScan(false, false);
                //oScan.GetSWRepository().ConfigureAwait(false); //no need to load Repository on init
                oUpdate = new RZUpdate.RZUpdater();

                /*
                 * //Username and PW is not yet implemented
                 * if (!string.IsNullOrEmpty(Properties.Settings.Default.Username))
                 * {
                 *  _AuthenticationToken = RZApi.AuthenticateUser(Properties.Settings.Default.Username, ToInsecureString(DecryptString(Properties.Settings.Default.Password)));
                 * }
                 * else
                 * {
                 *  _AuthenticationToken = RZApi.AuthenticateUser("FreeRZ", GetTimeToken());
                 * }
                 *
                 * request.Debug("RZ Token: " + _AuthenticationToken);
                 *
                 * RZApi.SecuredWebServiceHeaderValue = new RZ.SecuredWebServiceHeader() { AuthenticatedToken = _AuthenticationToken };
                 *
                 * dLastTokenRefresh = DateTime.Now;*/
            }
            catch { }
        }
示例#3
0
        //public static string WebServiceURL = "https://ruckzuck.azurewebsites.net/wcf/RZService.svc";

        //private DateTime dLastTokenRefresh = new DateTime();

        /// <summary>
        /// Initialize the RuckZuck Web-Service
        /// </summary>
        /// <param name="request"></param>
        private void _initRZ(Request request)
        {
            try
            {
                Properties.Settings.Default.Location = "";
                Properties.Settings.Default.Save();

                if (Properties.Settings.Default.Location.StartsWith("https:"))
                {
                    RZRestAPIv2.sURL = Properties.Settings.Default.Location;
                }
                else
                {
                    Properties.Settings.Default.Location = RZRestAPIv2.sURL;
                    Properties.Settings.Default.Save();
                }

                oScan   = new RZScan(false, false);
                oUpdate = new RZUpdate.RZUpdater();
            }
            catch { }
        }
示例#4
0
        /// <summary>
        /// Uninstall a SW
        /// </summary>
        /// <param name="fastPackageReference"></param>
        /// <param name="request"></param>
        private void _uninstallPackage(string fastPackageReference, Request request)
        {
            //_reAuthenticate(request); //Check if AuthToken is still valid

            string sProd = fastPackageReference;
            string sVer  = "";
            string sManu = "";

            if (fastPackageReference.Contains(";"))
            {
                try
                {
                    sProd = fastPackageReference.Split(';')[0].Trim();
                    sVer  = fastPackageReference.Split(';')[1].Trim();
                    sManu = fastPackageReference.Split(';')[2].Trim();
                }
                catch { }
            }

            if (string.IsNullOrEmpty(sVer))
            {
                sVer = lSoftware.First(t => t.ProductName == sProd).ProductVersion;
            }

            request.Debug(sProd);
            request.Debug(sVer);

            oUpdate = new RZUpdate.RZUpdater();
            oUpdate.SoftwareUpdate.SW.ProductName    = sProd;
            oUpdate.SoftwareUpdate.SW.ProductVersion = sVer;
            oUpdate.SoftwareUpdate.SW.Manufacturer   = sManu;

            oUpdate.SoftwareUpdate.GetInstallType();

            if (!string.IsNullOrEmpty(oUpdate.SoftwareUpdate.SW.PSUninstall))
            {
                RunPS(oUpdate.SoftwareUpdate.SW.PSUninstall);
            }
        }
示例#5
0
        /// <summary>
        /// Install a Software from RuckZuck repo
        /// </summary>
        /// <param name="fastPackageReference"></param>
        /// <param name="request"></param>
        private void _installPackage(string fastPackageReference, Request request)
        {
            //_reAuthenticate(request); //Check if AuthToken is still valid

            bool   bSkipDep = false;
            bool   bDLPath  = false;
            string sDLPath  = "";

            if (request.OptionKeys.Contains("SkipDependencies"))
            {
                request.Message("Skip all dependencies.");
                bSkipDep = true;
            }
            if (request.OptionKeys.Contains("LocalPath"))
            {
                sDLPath = request.GetOptionValue("LocalPath");
                request.Message("Download-Path set to:" + sDLPath);
                bDLPath = true;
            }

            string sProd = fastPackageReference;
            string sVer  = "";
            string sManu = "";

            if (fastPackageReference.Contains(";"))
            {
                try
                {
                    sProd = fastPackageReference.Split(';')[0].Trim();
                    sVer  = fastPackageReference.Split(';')[1].Trim();
                    sManu = fastPackageReference.Split(';')[2].Trim();
                }
                catch { }
            }

            if (request.OptionKeys.Contains("Manufacturer"))
            {
                sManu = request.GetOptionValue("Manufacturer");
            }

            if (request.OptionKeys.Contains("ProductVersion"))
            {
                sVer = request.GetOptionValue("ProductVersion");
            }

            if (request.OptionKeys.Contains("ProductName"))
            {
                sProd = request.GetOptionValue("ProductName");
            }

            oUpdate = new RZUpdate.RZUpdater();
            oUpdate.SoftwareUpdate.SW.ProductName    = sProd;
            oUpdate.SoftwareUpdate.SW.ProductVersion = sVer;
            oUpdate.SoftwareUpdate.SW.Manufacturer   = sManu;

            oUpdate.SoftwareUpdate.GetInstallType();

            if (!bDLPath)
            {
                oUpdate.SoftwareUpdate.Download(false).Result.ToString();
            }
            else
            {
                oUpdate.SoftwareUpdate.Download(false, sDLPath).Result.ToString();
            }

            if (oUpdate.SoftwareUpdate.Install(false, true).Result)
            {
                request.Verbose(sManu + " " + sProd + " " + sVer + " installed.");
            }
            else
            {
                request.Verbose(sManu + " " + sProd + " " + sVer + " NOT installed.");
            }
        }