public ServiceBusQueueUtils(
     ISessionSettings sessionSettings,
     ISecurityAccessSignatureProvider securityAccessSignatureProvider)
 {
     SessionSettings = sessionSettings;
     SecurityAccessSignatureProvider = securityAccessSignatureProvider;
 }
Example #2
0
 internal ActiveSession(ISystemOperations so, ISession session, ISessionSettings sessionSettings)
 {
     _so               = so;
     _session          = session;
     _sessionSettings  = sessionSettings;
     _tempFolder       = new VbaTemporaryFolder(so);
     _repositoryFolder = new VbaRepositoryFolder(so, session, sessionSettings);
 }
Example #3
0
 public ClientSettings(
     ISocketSettings socketSettings,
     ISessionSettings sessionSettings,
     int httpRequestTimeout)
 {
     _socketSettings = socketSettings;
     _sessionSettings = sessionSettings;
     _httpRequestTimeout = httpRequestTimeout;
 }
Example #4
0
        public static IEnumerable <Patch> GetModulePatches(ISession session, ISessionSettings sessionSettings,
                                                           string vbaFolderPath, IList <KeyValuePair <string, Tuple <string, ModuleType> > > folderModules,
                                                           IList <KeyValuePair <string, Tuple <string, ModuleType> > > fileModules)
        {
            IList <KeyValuePair <string, Tuple <string, ModuleType> > > oldModules;
            IList <KeyValuePair <string, Tuple <string, ModuleType> > > newModules;
            string oldFolder;
            string newFolder;

            if (session.Action == ActionType.Extract)
            {
                oldModules = folderModules;
                newModules = fileModules;
                oldFolder  = session.FolderPath;
                newFolder  = vbaFolderPath;
            }
            else
            {
                oldModules = fileModules;
                newModules = folderModules;
                oldFolder  = vbaFolderPath;
                newFolder  = session.FolderPath;
            }

            if (sessionSettings.IgnoreEmpty)
            {
                oldModules = oldModules.Where(kvp => ModuleProcessing.HasCode(kvp.Value.Item1)).ToList();
                newModules = newModules.Where(kvp => ModuleProcessing.HasCode(kvp.Value.Item1)).ToList();
            }

            // find modules which aren't in both lists and record them as new/deleted
            var patches = new List <Patch>();

            patches.AddRange(GetDeletedModuleChanges(oldModules, newModules));
            patches.AddRange(GetNewModuleChanges(oldModules, newModules, session.Action, sessionSettings.AddNewDocumentsToFile));

            // this also filters the new/deleted modules from the last step
            var sideBySide = (from o in oldModules
                              join n in newModules on o.Key equals n.Key
                              select new SideBySideArgs {
                Name = o.Key,
                OldType = o.Value.Item2,
                NewType = n.Value.Item2,
                OldText = o.Value.Item1,
                NewText = n.Value.Item1
            }).ToArray();

            patches.AddRange(GetFrxChanges(oldFolder, newFolder, sideBySide.Where(x => x.NewType == ModuleType.Form).Select(x => x.Name)));
            sideBySide = sideBySide.Where(sxs => sxs.OldText != sxs.NewText).ToArray();
            foreach (var sxs in sideBySide)
            {
                patches.AddRange(Patch.CompareSideBySide(sxs));
            }

            return(patches);
        }
Example #5
0
        public virtual ISession Create(object address, ISessionSettings settings)
        {
            C local = (C)settings;

            if (settings == null)
            {
                local = (C)settings;
            }
            return(this.Create((A)address, local));
        }
Example #6
0
        public override ISession Create(object address, ISessionSettings settings)
        {
            AmsAddress      address2  = null;
            SessionSettings settings2 = null;

            if (address is AmsAddress)
            {
                address2 = (AmsAddress)address;
            }
            else if (address is string)
            {
                address2 = AmsAddress.Parse((string)address);
            }
            if (settings != null)
            {
                settings2 = (SessionSettings)settings;
            }
            return(this.Create(address2, settings2));
        }
        /// <summary>
        /// Convert an OrchestrationRuntimeState instance to a serialized raw stream to be saved in session state.
        /// </summary>
        /// <param name="newOrchestrationRuntimeState">The new OrchestrationRuntimeState to be serialized</param>
        /// <param name="runtimeState">The current runtime state</param>
        /// <param name="dataConverter">A data converter for serialization and deserialization</param>
        /// <param name="shouldCompress">True if should compress when serialization</param>
        /// <param name="serviceBusSessionSettings">The service bus session settings</param>
        /// <param name="orchestrationServiceBlobStore">A blob store for external blob storage</param>
        /// <param name="sessionId">The session id</param>
        /// <returns>A serialized raw strem to be saved in session state</returns>
        public static async Task <Stream> OrchestrationRuntimeStateToRawStream(
            OrchestrationRuntimeState newOrchestrationRuntimeState,
            OrchestrationRuntimeState runtimeState,
            DataConverter dataConverter,
            bool shouldCompress,
            ISessionSettings serviceBusSessionSettings,
            IOrchestrationServiceBlobStore orchestrationServiceBlobStore,
            string sessionId)
        {
            OrchestrationSessionState orchestrationSessionState = new OrchestrationSessionState(newOrchestrationRuntimeState.Events);
            string serializedState = dataConverter.Serialize(orchestrationSessionState);

            long   originalStreamSize = 0;
            Stream compressedState    = Utils.WriteStringToStream(
                serializedState,
                shouldCompress,
                out originalStreamSize);

            runtimeState.Size           = originalStreamSize;
            runtimeState.CompressedSize = compressedState.Length;

            if (runtimeState.CompressedSize > serviceBusSessionSettings.SessionMaxSizeInBytes)
            {
                throw new OrchestrationException($"Session state size of {runtimeState.CompressedSize} exceeded the termination threshold of {serviceBusSessionSettings.SessionMaxSizeInBytes} bytes");
            }

            if (runtimeState.CompressedSize > serviceBusSessionSettings.SessionOverflowThresholdInBytes)
            {
                TraceHelper.TraceSession(
                    TraceEventType.Information,
                    "RuntimeStateStreamConverter-SessionStateThresholdExceeded",
                    sessionId,
                    $"Session state size of {runtimeState.CompressedSize} exceeded the termination threshold of {serviceBusSessionSettings.SessionOverflowThresholdInBytes} bytes." +
                    $"Creating an OrchestrationSessionState instance with key for exteranl storage.");
                return(await CreateStreamForExternalStorageAsync(shouldCompress, orchestrationServiceBlobStore, sessionId, dataConverter, compressedState));
            }

            return(compressedState);
        }
Example #8
0
 internal VbaRepositoryFolder(ISystemOperations so, ISession session, ISessionSettings settings) : base(so, session.FolderPath)
 {
     _settings = settings;
     _so       = so;
 }
Example #9
0
 internal VbaRepositoryFolder(ISession session, ISessionSettings settings) : this(new RealSystemOperations(), session, settings)
 {
 }
Example #10
0
 public ActiveSession(ISession session, ISessionSettings sessionSettings)
 {
     _session         = session;
     _sessionSettings = sessionSettings;
     _vf = new VbaFolder();
 }
 public ShoppingCartRepository(ApplicationDb ctx, ISessionSettings session)
 {
     _ctx           = ctx;
     _session       = session;
     ShoppingCartId = _session.OnGet();
 }
Example #12
0
 public ClientSettings(ISocketSettings socketSettings,
                       ISessionSettings sessionSettings)
     : this(socketSettings, sessionSettings, 60000)
 {
 }
Example #13
0
 public Sut(ISessionSettings sessionSettings)
 {
     _sessionSettings = sessionSettings;
 }
Example #14
0
 public ActiveSession(ISession session, ISessionSettings sessionSettings) : this(new RealSystemOperations(), session, sessionSettings)
 {
 }