Ejemplo n.º 1
0
        /// <summary>
        /// Creates the activity results object with the correct information
        /// for use by a UI.
        /// </summary>
        /// <param name="result"></param>
        /// <returns></returns>
        private ActivityResult ProcessResult(LicenceKeyResults result)
        {
            switch (result)
            {
            case Mobile.Detection.LicenceKeyResults.Success:
                return(new ActivityResult(
                           String.Format(
                               ActivationSuccessHtml,
                               SuccessCssClass),
                           true));

            case Mobile.Detection.LicenceKeyResults.Config:
                return(new ActivityResult(String.Format(
                                              ActivationFailureCouldNotUpdateConfigHtml,
                                              ErrorCssClass,
                                              String.Join(", ", FiftyOne.Foundation.Mobile.Constants.ConfigFileNames))));

            case Mobile.Detection.LicenceKeyResults.Https:
                return(new ActivityResult(String.Format(
                                              ActivationFailureHttpHtml,
                                              ErrorCssClass,
                                              FiftyOne.Foundation.Mobile.Detection.LicenceKey.HostName)));

            case Mobile.Detection.LicenceKeyResults.Invalid:
                return(new ActivityResult(String.Format(
                                              ActivationFailureInvalidHtml,
                                              ErrorCssClass)));

            case Mobile.Detection.LicenceKeyResults.StreamFailure:
                return(new ActivityResult(String.Format(
                                              ActivationStreamFailureHtml,
                                              ErrorCssClass)));

            case Mobile.Detection.LicenceKeyResults.DataInvalid:
                return(new ActivityResult(String.Format(
                                              ActivationDataInvalidHtml,
                                              ErrorCssClass)));

            case Mobile.Detection.LicenceKeyResults.WriteLicenceFile:
                return(new ActivityResult(String.Format(
                                              ActivationFailureCouldNotWriteLicenceFileHtml,
                                              ErrorCssClass,
                                              FiftyOne.Foundation.Mobile.Detection.LicenceKey.LicenceKeyFileName,
                                              Path.Combine(HostingEnvironment.ApplicationPhysicalPath, "bin"))));

            case Mobile.Detection.LicenceKeyResults.WriteDataFile:
                return(new ActivityResult(String.Format(
                                              ActivationFailureCouldNotWriteDataFileHtml,
                                              ErrorCssClass,
                                              AutoUpdate.BinaryFile.FullName,
                                              WindowsIdentity.GetCurrent().Name)));

            case Mobile.Detection.LicenceKeyResults.GenericFailure:
            default:
                return(new ActivityResult(String.Format(
                                              ActivationFailureGenericHtml,
                                              ErrorCssClass)));
            }
        }
Ejemplo n.º 2
0
        private static LicenceKeyResults ValidateDownloadedFile(string uncompressedTempFile)
        {
            LicenceKeyResults status = LicenceKeyResults.InProgress;

            try
            {
                using (var dataSet = StreamFactory.Create(uncompressedTempFile, File.GetLastWriteTimeUtc(uncompressedTempFile)))
                {
                    var currentProvider = WebProvider.ActiveProvider;
                    status = currentProvider == null ||
                             dataSet.Published != currentProvider.DataSet.Published ||
                             dataSet.Properties.Count != currentProvider.DataSet.Properties.Count ?
                             LicenceKeyResults.InProgress : LicenceKeyResults.UpdateNotNeeded;
                }
            }
            catch (MobileException ex)
            {
                EventLog.Warn(ex);
                return(LicenceKeyResults.Invalid);
            }
            return(status);
        }
 /// <summary>
 /// Creates the activity results object with the correct information
 /// for use by a UI.
 /// </summary>
 /// <param name="result"></param>
 /// <returns></returns>
 private ActivityResult ProcessResult(LicenceKeyResults result)
 {
     switch (result)
     {
         case Mobile.Detection.LicenceKeyResults.Success:
             return new ActivityResult(
                 String.Format(
                     ActivationSuccessHtml,
                     SuccessCssClass),
                     true);
         case Mobile.Detection.LicenceKeyResults.Config:
             return new ActivityResult(String.Format(
                 ActivationFailureCouldNotUpdateConfigHtml,
                 ErrorCssClass,
                 String.Join(", ", FiftyOne.Foundation.Mobile.Constants.ConfigFileNames)));
         case Mobile.Detection.LicenceKeyResults.Https:
             return new ActivityResult(String.Format(
                 ActivationFailureHttpHtml,
                 ErrorCssClass,
                 FiftyOne.Foundation.Mobile.Detection.LicenceKey.HostName));
         case Mobile.Detection.LicenceKeyResults.Invalid:
             return new ActivityResult(String.Format(
                 ActivationFailureInvalidHtml,
                 ErrorCssClass));
         case Mobile.Detection.LicenceKeyResults.StreamFailure:
             return new ActivityResult(String.Format(
                 ActivationStreamFailureHtml,
                 ErrorCssClass));
         case Mobile.Detection.LicenceKeyResults.DataInvalid:
             return new ActivityResult(String.Format(
                 ActivationDataInvalidHtml,
                 ErrorCssClass));
         case Mobile.Detection.LicenceKeyResults.WriteLicenceFile:
             return new ActivityResult(String.Format(
                 ActivationFailureCouldNotWriteLicenceFileHtml,
                 ErrorCssClass,
                 FiftyOne.Foundation.Mobile.Detection.LicenceKey.LicenceKeyFileName,
                 Path.Combine(HostingEnvironment.ApplicationPhysicalPath, "bin")));
         case Mobile.Detection.LicenceKeyResults.WriteDataFile:
             return new ActivityResult(String.Format(
                 ActivationFailureCouldNotWriteDataFileHtml,
                 ErrorCssClass,
                 AutoUpdate.MasterBinaryDataFile.FullName,
                 WindowsIdentity.GetCurrent().Name));
         case Mobile.Detection.LicenceKeyResults.GenericFailure:
         default:
             return new ActivityResult(String.Format(
                 ActivationFailureGenericHtml,
                 ErrorCssClass));
     }
 }