public void OnChatToAllianceStreamMessageReceived(ChatToAllianceStreamMessage message)
        {
            if (!this.CanSendGlobalChatMessage())
            {
                return;
            }

            if (this.m_session.Alliance != null)
            {
                string chatMessage = message.RemoveMessage();

                if (string.IsNullOrEmpty(chatMessage))
                {
                    return;
                }
                if (chatMessage.Length > 128)
                {
                    chatMessage = chatMessage.Substring(0, 128);
                }

                AllianceMemberEntry memberEntry     = this.m_session.Alliance.Members[this.m_session.AccountId];
                ChatStreamEntry     chatStreamEntry = new ChatStreamEntry();
                AllianceStreamEntryUtil.SetSenderInfo(chatStreamEntry, memberEntry);

                chatStreamEntry.SetMessage(WordCensorUtil.FilterMessage(chatMessage));

                StreamManager.Create(this.m_session.Alliance.Id, chatStreamEntry);
                this.m_session.Alliance.AddStreamEntry(chatStreamEntry);
                AllianceManager.Save(this.m_session.Alliance);
            }
        }
        private void OnCancelChallengeMessageReceived(CancelChallengeMessage message)
        {
            if (this.m_session.Alliance != null)
            {
                Alliance            alliance    = this.m_session.Alliance;
                AllianceMemberEntry memberEntry = alliance.Members[this.m_session.AccountId];

                for (int i = 0; i < alliance.StreamEntryList.Size(); i++)
                {
                    StreamEntry streamEntry = StreamManager.GetAllianceStream(alliance.StreamEntryList[i]);

                    if (streamEntry != null && streamEntry.GetStreamEntryType() == StreamEntryType.CHALLENGE && streamEntry.GetSenderAvatarId().Equals(memberEntry.GetAvatarId()))
                    {
                        ChallengeStreamEntry prevChallengeStreamEntry = (ChallengeStreamEntry)streamEntry;

                        if (prevChallengeStreamEntry.IsStarted())
                        {
                            return;
                        }

                        alliance.RemoveStreamEntry(streamEntry.GetId());
                    }
                }
            }
        }
Пример #3
0
		public Channels()
		{
			InitializeComponent();
			Dispatcher.ShutdownStarted += Dispatcher_ShutdownStarted;

			channels = new ObservableCollection<ChannelInfo>();
			onlineImage = new BitmapImage(new Uri("pack://application:,,,/LivestreamBuddyNew;component/Resources/check.png"));
			offlineImage = new BitmapImage(new Uri("pack://application:,,,/LivestreamBuddyNew;component/Resources/grayX.png"));

			addStreamToFavoritesList("teamxim");

			foreach (string channel in DataFileManager.GetFavoriteChannels())
			{
				addStreamToFavoritesList(channel, true);
			}

			streamManager = new StreamManager();

			grdChannels.ItemsSource = channels;
			firstReportDone = false;

			worker = new BackgroundWorker();
			worker.WorkerReportsProgress = true;
			worker.WorkerSupportsCancellation = true;
			worker.DoWork += worker_DoWork;
			worker.ProgressChanged += worker_ProgressChanged;
			worker.RunWorkerAsync();
		}
Пример #4
0
        public InfoBackgroundWorker(string url)
        {
            Url = url;
            var type = UrlHelper.ParseUrl(Url);

            switch (type.Item1)
            {
            case SourceType.UrPlay:
            case SourceType.UrSkola:
            case SourceType.Svt1Live:
            case SourceType.Svt24Live:
            case SourceType.Svt2Live:
            case SourceType.SvtBarnLive:
            case SourceType.SvtKunskapLive:
                Manager = new UrStreamManager(Url, new StreamDownloader());
                break;

            case SourceType.YouTube:
                Manager = new YouTubeStreamManager(Url, new StreamDownloader());
                break;

            default:
                Manager = new StreamManager(Url, new StreamDownloader());
                break;
            }

            this.DoWork += DownloadInfo;
        }
Пример #5
0
        private static void RegisterCreationActivity(ActivityKind activityKind, Dictionary <string, object> data,
                                                     SPWeb contextWeb,
                                                     StreamManager streamManager, ThreadManager threadManager, ActivityManager activityManager)
        {
            var webId = (Guid)data["Id"];

            var activityDateTime = (DateTime)data["ActivityTime"];

            Thread thread = threadManager.SaveThread(new Thread
            {
                Title = (string)data["Title"],
                Url   = (string)data["URL"],
                Kind  = ObjectKind.Workspace,
                FirstActivityDateTime = activityDateTime,
                WebId = webId,
                Users = new[] { new User {
                                    Id = (int)data["UserId"], Role = UserRole.Author
                                } }
            });

            activityManager.RegisterActivity(new Activity
            {
                Kind   = activityKind,
                UserId = (int)data["UserId"],
                Thread = thread,
                Date   = activityDateTime
            });

            Guid streamId = streamManager.GetGlobalStreamId(webId);

            threadManager.AssociateStreams(thread, new[] { streamId });
            threadManager.UpdateUsers(thread);

            CoreFunctions.setConfigSetting(contextWeb, CREATED_CONFIG_KEY, true.ToString());
        }
        private void OnStartFriendlyChallengeSpectateMessageReceived(StartFriendlyChallengeSpectateMessage message)
        {
            if (this.m_session.Alliance != null)
            {
                Alliance  alliance = this.m_session.Alliance;
                LogicLong streamId = message.GetStreamId();

                if (alliance.StreamEntryList.IndexOf(streamId) != -1)
                {
                    StreamEntry streamEntry = StreamManager.GetAllianceStream(message.GetStreamId());

                    if (streamEntry.GetStreamEntryType() == StreamEntryType.CHALLENGE)
                    {
                        ChallengeStreamEntry challengeStreamEntry = (ChallengeStreamEntry)streamEntry;

                        if (challengeStreamEntry.IsStarted() && challengeStreamEntry.GetLiveReplayId() != null)
                        {
                            this.m_session.SendMessage(new GameSpectateLiveReplayMessage
                            {
                                LiveReplayId = challengeStreamEntry.GetLiveReplayId(),
                                IsEnemy      = false
                            }, 9);
                            return;
                        }
                    }
                }
            }

            LiveReplayFailedMessage liveReplayFailedMessage = new LiveReplayFailedMessage();

            liveReplayFailedMessage.SetReason(LiveReplayFailedMessage.Reason.GENERIC);
            this.m_session.SendPiranhaMessage(liveReplayFailedMessage, 1);
        }
        public IEnumerable <TRet> StreamRecords <TRet>(TParam parameters, int?countToRetrieve, Func <int> totalExist = null)
        {
            if (StreamCount != null)
            {
                SetTotalExist(StreamCount.Value);
            }

            SetStreamCount(parameters, countToRetrieve);

            if (totalExist == null)
            {
                //If TotalExist was known, we set it upon entering StreamRecords.
                //Otherwise, we set it upon entering SetStreamCount
                totalExist = () => GetTotalExist(parameters);
            }

            var manager = new StreamManager <TObject, TParam>(
                PrtgSessionState.Client.ObjectEngine, //Object Engine
                parameters,                           //Parameters
                totalExist,                           //Get Count (Total Exist)
                true,                                 //Serial
                true,                                 //Direct Call
                cmdlet.GetStreamObjects               //Get Objects
                );

            return((IEnumerable <TRet>)PrtgSessionState.Client.ObjectEngine.SerialStreamObjectsInternal(manager));
        }
        public async void DoneProducing_Data_WillCauseZeroRead_And_End()
        {
            const int expectedReadCount = 100;
            var       producerBuffer    = new byte[100];
            var       consumerBuffer    = new byte[expectedReadCount];
            var       readCount         = 0;

            var streamManager = new StreamManager(e => { });
            var id            = Guid.NewGuid();

            var assembler = streamManager.GetPayloadAssembler(id);

            assembler.ContentLength = 0;

            var random = new Random();

            random.NextBytes(producerBuffer);

            var stream = new PayloadStream(assembler);

            await stream.WriteAsync(producerBuffer, 0, producerBuffer.Length);

            stream.DoneProducing();

            readCount = stream.Read(consumerBuffer, 0, expectedReadCount);
            Assert.Equal(100, readCount);

            readCount = stream.Read(consumerBuffer, readCount, expectedReadCount);
            Assert.Equal(0, readCount);
        }
Пример #9
0
    private void saveImageDlgClicked()
    {
        // NOTE: SaveFileDialog are only supported on WinRT
        var data = ReignLogo.texture.EncodeToPNG();

        StreamManager.SaveFileDialog(data, FolderLocations.Pictures, new string[] { ".png" }, imageSavedCallback);
    }
Пример #10
0
    private void saveToPicturesClicked()
    {
        disableButtons();
        var data = ReignLogo.texture.EncodeToPNG();

        StreamManager.SaveFile("TEST.png", data, FolderLocations.Pictures, imageSavedCallback);
    }
Пример #11
0
 public void Setup()
 {
     _downloader = A.Fake <IStreamDownloader>();
     A.CallTo(() => _downloader.Download(_dataUrl)).Returns(_dataAbsolutePath);
     A.CallTo(() => _downloader.Download(_streamMasterDataUrl)).Returns(_masterDataAbsolutePath);
     _underTest = new StreamManager(_htmlUri, _downloader);
 }
Пример #12
0
        private static void OnAllianceRequestAllianceUnitsMessageReceived(AllianceRequestAllianceUnitsMessage message)
        {
            if (AllianceManager.TryGet(message.AccountId, out Alliance alliance) && alliance.Members.TryGetValue(message.MemberId, out AllianceMemberEntry memberEntry))
            {
                for (int i = 0; i < alliance.StreamEntryList.Size(); i++)
                {
                    StreamEntry streamEntry = StreamManager.GetAllianceStream(alliance.StreamEntryList[i]);

                    if (streamEntry != null && streamEntry.GetStreamEntryType() == StreamEntryType.DONATE && streamEntry.GetSenderAvatarId().Equals(memberEntry.GetAvatarId()))
                    {
                        alliance.RemoveStreamEntry(streamEntry.GetId());
                    }
                }

                DonateStreamEntry donateStreamEntry = new DonateStreamEntry();
                AllianceStreamEntryUtil.SetSenderInfo(donateStreamEntry, memberEntry);

                string donateMessage = message.Message;

                if (donateMessage.Length > 128)
                {
                    donateMessage = donateMessage.Substring(0, 128);
                }

                donateStreamEntry.SetMessage(donateMessage);
                donateStreamEntry.SetCasteLevel(message.CastleUpgradeLevel, message.CastleUsedCapacity, message.CastleSpellUsedCapacity, message.CastleTotalCapacity, message.CastleSpellTotalCapacity);

                StreamManager.Create(alliance.Id, donateStreamEntry);

                alliance.AddStreamEntry(donateStreamEntry);

                AllianceManager.Save(alliance);
            }
        }
Пример #13
0
        private static MemoryStream GetThumbnailFromProcess(Process p,
                                                            ref int width,
                                                            ref int height)
        {
            var lastPosition = 0L;

            using (var thumb = StreamManager.GetStream())
            {
                using (var pump = new StreamPump(
                           p.StandardOutput.BaseStream, thumb, 4096))
                {
                    pump.Pump(null);
                    while (!p.WaitForExit(20000))
                    {
                        if (lastPosition != thumb.Position)
                        {
                            lastPosition = thumb.Position;
                            continue;
                        }

                        p.Kill();
                        throw new ArgumentException("ffmpeg timed out");
                    }

                    if (p.ExitCode != 0)
                    {
                        throw new ArgumentException("ffmpeg does not understand the stream");
                    }
                    if (!pump.Wait(2000))
                    {
                        throw new ArgumentException("stream reading timed out");
                    }
                    if (thumb.Length == 0)
                    {
                        throw new ArgumentException("ffmpeg did not produce a result");
                    }

                    using (var img = Image.FromStream(thumb))
                    {
                        using (var scaled = ThumbnailMaker.ResizeImage(img, width, height,
                                                                       ThumbnailMakerBorder.Bordered))
                        {
                            width  = scaled.Width;
                            height = scaled.Height;
                            var rv = new MemoryStream();
                            try
                            {
                                scaled.Save(rv, ImageFormat.Jpeg);
                                return(rv);
                            }
                            catch (Exception)
                            {
                                rv.Dispose();
                                throw;
                            }
                        }
                    }
                }
            }
        }
Пример #14
0
        public void ShouldDownLoadStreamInfo()
        {
            var manager = new StreamManager(_htmlUri, new StreamDownloader());

            manager.DownloadAndParseData();
            Assert.AreEqual(7, manager.Streams.Count);
        }
Пример #15
0
        private void _infoWorker_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e)
        {
            _infoResult = _infoWorker.Manager;
            _infoWorker.RunWorkerCompleted -= _infoWorker_RunWorkerCompleted;
            _infoWorker = null;

            int i = 0;

            foreach (var streamInfo in _infoResult.Streams)
            {
                var radio = new MaterialRadioButton();
                radio.Text            = streamInfo.ToString();
                radio.Size            = new Size(250, 18);
                radio.Location        = new Point(20, 122 + i * 20);
                radio.CheckedChanged += Radio_CheckedChanged;
                tabPage1.Controls.Add(radio);
                i++;
                _streamButtons.Add(radio, streamInfo);
            }

            if (_streamButtons.Count > 0)
            {
                txtFilename.Text = _infoResult.GetValidFileName(_infoResult.Streams.Last());
                pictureBox.Image = _infoResult.PosterImage;
                _streamButtons.Last().Key.Checked = true;
                btnStartDownload.Visible = true;
            }
            else
            {
                lblStatus.Text = "Status: Could not find stream";
            }
        }
Пример #16
0
        protected virtual void Dispose(bool disposing)
        {
            if (!_disposed)
            {
                StreamManager.UnRegister(_id);

                if (_form != IntPtr.Zero)
                {
                    NativeMethods.FORM_DoDocumentAAction(_form, NativeMethods.FPDFDOC_AACTION.WC);
                    NativeMethods.FPDFDOC_ExitFormFillEnvironment(_form);
                    _form = IntPtr.Zero;
                }

                if (_document != IntPtr.Zero)
                {
                    NativeMethods.FPDF_CloseDocument(_document);
                    _document = IntPtr.Zero;
                }

                if (_formCallbacksHandle.IsAllocated)
                {
                    _formCallbacksHandle.Free();
                }

                if (_stream != null)
                {
                    _stream.Dispose();
                    _stream = null;
                }

                _disposed = true;
            }
        }
Пример #17
0
        public static void InitWorkspace(List <string> typeDirectories, string workspaceDirectory, string cacheDirectory)
        {
            if (typeDirectories == null)
            {
                throw new ArgumentNullException("typeDirectories");
            }
            if (typeDirectories.Count == 0)
            {
                throw new ArgumentException("List of type directories cannot be empty", "typeDirectories");
            }
            if (cacheDirectory == null)
            {
                throw new ArgumentNullException("cacheDirectory");
            }
            if (cacheDirectory.Length == 0)
            {
                throw new ArgumentException("m_workspace cache directory must be a valid directory", "cacheDirectory");
            }

            if (s_workspaceInstance != null)
            {
                s_workspaceInstance.Dispose();
            }

            StreamManager manager = StreamManager.CreateNewManager();

            s_workspaceInstance = InitWorkspaceInternal(typeDirectories, workspaceDirectory, cacheDirectory, manager);
        }
 public LoginController(UserDBRepository repo, StreamManager manager)
 {
     _userRepo       = repo;
     streamManager   = manager;
     CONSUMER_KEY    = manager.ConsumerKey;
     CONSUMER_SECRET = manager.ConsumerSecret;
 }
Пример #19
0
        private static void OnSendAvatarStreamsToClientMessageReceived(SendAvatarStreamsToClientMessage message)
        {
            AvatarStreamMessage                avatarStreamMessage = new AvatarStreamMessage();
            LogicArrayList <LogicLong>         ids = message.StreamIds;
            LogicArrayList <AvatarStreamEntry> avatarStreamList = new LogicArrayList <AvatarStreamEntry>(ids.Size());

            for (int i = 0; i < ids.Size(); i++)
            {
                AvatarStreamEntry avatarStreamEntry = StreamManager.GetAvatarStream(ids[i]);

                if (avatarStreamEntry != null)
                {
                    avatarStreamList.Add(avatarStreamEntry);
                }
            }

            avatarStreamMessage.SetStreamEntries(avatarStreamList);
            avatarStreamMessage.Encode();

            ServerMessageManager.SendMessage(StreamMessageManager.CreateForwardLogicMessage(avatarStreamMessage, message.SessionId), ServerManager.GetProxySocket(message.SessionId));

            for (int i = 0; i < avatarStreamList.Size(); i++)
            {
                AvatarStreamEntry avatarStreamEntry = avatarStreamList[i];

                if (avatarStreamEntry.IsNew())
                {
                    avatarStreamEntry.SetNew(false);
                    StreamManager.Save(avatarStreamEntry);
                }
            }
        }
Пример #20
0
        private static void OnLoadAvatarStreamOfTypeRequestMessageReceived(LoadAvatarStreamOfTypeRequestMessage message)
        {
            LoadAvatarStreamOfTypeResponseMessage loadAvatarStreamOfTypeResponseMessage = new LoadAvatarStreamOfTypeResponseMessage();
            LogicArrayList <AvatarStreamEntry>    streamEntryList = new LogicArrayList <AvatarStreamEntry>(message.StreamIds.Size());

            for (int i = 0; i < message.StreamIds.Size(); i++)
            {
                AvatarStreamEntry entry = StreamManager.GetAvatarStream(message.StreamIds[i]);

                if (entry != null && entry.GetAvatarStreamEntryType() == message.Type)
                {
                    if (message.SenderAvatarId != null && !entry.GetSenderAvatarId().Equals(message.SenderAvatarId))
                    {
                        continue;
                    }

                    streamEntryList.Add(entry);
                }
            }

            loadAvatarStreamOfTypeResponseMessage.Success    = true;
            loadAvatarStreamOfTypeResponseMessage.StreamList = streamEntryList;

            ServerRequestManager.SendResponse(loadAvatarStreamOfTypeResponseMessage, message);
        }
Пример #21
0
        private static void OnAllianceChallengeReportMessageReceived(AllianceChallengeReportMessage message)
        {
            if (AllianceManager.TryGet(message.AccountId, out Alliance alliance))
            {
                ChallengeStreamEntry streamEntry = (ChallengeStreamEntry)StreamManager.GetAllianceStream(message.StreamId);

                if (streamEntry != null)
                {
                    ChallengeReplayStreamEntry challengeReplayStreamEntry = new ChallengeReplayStreamEntry();

                    challengeReplayStreamEntry.SetSenderAvatarId(challengeReplayStreamEntry.GetSenderAvatarId());
                    challengeReplayStreamEntry.SetSenderHomeId(challengeReplayStreamEntry.GetSenderHomeId());
                    challengeReplayStreamEntry.SetSenderName(challengeReplayStreamEntry.GetSenderName());
                    challengeReplayStreamEntry.SetSenderLevel(challengeReplayStreamEntry.GetSenderLevel());
                    challengeReplayStreamEntry.SetSenderLeagueType(challengeReplayStreamEntry.GetSenderLeagueType());
                    challengeReplayStreamEntry.SetSenderRole(challengeReplayStreamEntry.GetSenderRole());

                    challengeReplayStreamEntry.SetBattleLogJSON(message.BattleLog);
                    challengeReplayStreamEntry.SetReplayMajorVersion(LogicVersion.MAJOR_VERSION);
                    challengeReplayStreamEntry.SetReplayBuildVersion(LogicVersion.BUILD_VERSION);
                    challengeReplayStreamEntry.SetReplayContentVersion(ResourceManager.GetContentVersion());
                    challengeReplayStreamEntry.SetReplayId(message.ReplayId);

                    StreamManager.Create(alliance.Id, challengeReplayStreamEntry);

                    alliance.RemoveStreamEntry(streamEntry.GetId());
                    alliance.AddStreamEntry(challengeReplayStreamEntry);
                }
                else
                {
                    Logging.Warning("StreamMessageManager.onAllianceChallengeReportMessageReceived: pStreamEntry has been deleted. Replay ignored.");
                }
            }
        }
Пример #22
0
        /// <summary>
        /// Dispose OutboundSessionDriver references and the actual dispose of the OutboundSessionDriver in a safe fashion.
        /// This is used in reset partner stream operation, when the OutBoundSessionDriver is disposed and recreated.
        /// </summary>
        /// <param name="targetPartition">OutBoundSessionDriver for this Partition</param>
        /// <param name="streamManager">Reset corresponding OutBoundSessionDriver ref. in stream manager</param>
        /// <returns></returns>
        internal static async Task ClearDriverAsync(PartitionKey targetPartition, StreamManager streamManager)
        {
            FabricEvents.Events.ClearOutboundSessionDriver("Start@" + streamManager.TraceType, targetPartition.ToString());

            // this key must already have been resolved and normalized when the driver was created
            var normalizedPartitionKey = streamManager.SessionConnectionManager.GetNormalizedPartitionKey(targetPartition);

            Diagnostics.Assert(null != normalizedPartitionKey, "normalizedPartitionKey is not expected to be null in ClearDriverAsync().");

            // SyncPoint(lock)
            using (
                var syncPoint = new SyncPoint <PartitionKey>(
                    streamManager,
                    normalizedPartitionKey,
                    streamManager.RuntimeResources.OutboundSessionDriverSyncpoints))
            {
                // this is entering an await compatible critical section -- syncPoint.Dispose will leave it
                await syncPoint.EnterAsync(Timeout.InfiniteTimeSpan);

                // remove appropriate ref.
                OutboundSessionDriver driver = null;
                var removeSuccess            = streamManager.RuntimeResources.OutboundSessionDrivers.TryRemove(normalizedPartitionKey, out driver);

                // dispose the driver session
                if (removeSuccess)
                {
                    driver.Dispose();
                }
            }

            FabricEvents.Events.ClearOutboundSessionDriver("Finish@" + streamManager.TraceType, targetPartition.ToString());
        }
Пример #23
0
        public void RegisterTest()
        {
            Task server = runServer();

            server.Start();
            UserCommandManager userCommandManager = new UserCommandManager("127.0.0.1", 5555);

            Assert.IsFalse(userCommandManager.Register("Ala", "s", "Normal", "A", "A"));
            Assert.IsFalse(userCommandManager.Login("Ala", "zaq1@WSX"));
            Assert.IsTrue(userCommandManager.Register("Ala", "zaq1@WSX", "Normal", "A", "A"));
            Assert.IsTrue(userCommandManager.Login("Ala", "zaq1@WSX"));
            userCommandManager.Exit();
            server.Wait();

            Task textserver = runServer();

            textserver.Start();

            TcpClient     tcpClient = new TcpClient("127.0.0.1", 5555);
            StreamManager sm        = new StreamManager(tcpClient.GetStream());

            sm.Data = "new;Ala;s;Normal;A;A";
            Assert.AreNotEqual(sm.Data, "created");
            sm.Data = "login;Ala;s";
            Assert.AreNotEqual(sm.Data, "loged");
            sm.Data = "new;Ala;zaq1@WSX;Normal;A;A";
            Assert.AreEqual(sm.Data, "created");
            sm.Data = "login;Ala;zaq1@WSX";
            Assert.AreEqual(sm.Data, "loged");
            sm.Data = "exit";

            textserver.Wait();
        }
Пример #24
0
        /// <inheritdoc />
        protected override Stream OpenFileImpl(UPath path, FileMode mode, FileAccess access,
                                               FileShare share)
        {
            if (IsWithinSpecialDirectory(path))
            {
                throw new UnauthorizedAccessException($"The access to `{path}` is denied");
            }

            // Create directory if not existing
            var directory = path.GetDirectory();

            if (!DirectoryExists(directory))
            {
                CreateDirectory(directory);
            }

            // Open file
            Stream file;

            if (mode == FileMode.Create || mode == FileMode.CreateNew)
            {
                file = File.Open(ConvertPathToInternal(path), mode);
            }
            else
            {
                file = File.Open(ConvertPathToInternal(path), mode, access, share);
            }
            StreamManager.Register(file);

            GetOrCreateDispatcher().RaiseOpened(path);

            return(file);
        }
Пример #25
0
 public void Open()
 {
     if (m_inputStream == null)
     {
         m_inputStream = StreamManager.OpenReadStream(FilePath, PointDataOffset);
     }
 }
Пример #26
0
        /// <inheritdoc />
        public virtual void Dispose()
        {
            ArchiveChildren?.Clear();
            DialogOptions?.Clear();
            PluginManager?.CloseAll();
            StreamManager?.ReleaseAll();

            // Dispose content of state
            switch (PluginState)
            {
            case IArchiveState archiveState:
                archiveState.Files?.ForEach(x => x.Dispose());
                break;

            case IImageState imageState:
                imageState.Images?.ForEach(x => x.Dispose());
                break;
            }

            FilePlugin    = null;
            PluginState   = null;
            FilePath      = UPath.Empty;
            FileSystem    = null;
            StreamManager = null;
            PluginManager = null;
            DialogOptions = null;

            ParentStateInfo = null;

            IsDisposed = true;
        }
Пример #27
0
        internal SyncPoint(StreamManager streamManager, TKey key, ConcurrentDictionary <TKey, SyncPoint <TKey> > syncPointCollection)
        {
            this.syncEvent            = new TaskCompletionSource <bool>();
            this.key                  = key;
            this.syncPointCollection  = syncPointCollection;
            this.exitedAfterAcquiring = false;
            this.traceType            = streamManager.TraceType;
            this.streamManager        = streamManager;
            this.era                  = streamManager.Era;
            this.id = Interlocked.Increment(ref idgen);

            // we reset StreamManager level syncPointCollections to null when transitioning Primary -> NotPrimary and there may be a race
            if (syncPointCollection == null || this.era == Guid.Empty)
            {
                /*
                 * if (syncPointCollection == null)
                 * {
                 *  Tracing.WriteNoise("SyncPoint.Ctor", "{0} syncPointCollection is null", this.traceType);
                 * }
                 *
                 * Tracing.WriteNoise("SyncPoint.Ctor", "{0} Era = {1}", this.traceType, this.era);
                 */

                // we seem to have made a transition to not primary
                throw new FabricNotPrimaryException();
            }
        }
Пример #28
0
        public CliCommander(string[] args)
        {
            LoadConfiguration();

            var command = GetCommand(args);

            _streamManager = new StreamManager();

            switch (command.Type)
            {
            case CommandType.Start:
            {
                var startCommand = (StartCommand)command;
                var server       = _streamManager.Add(startCommand.Settings);
                server.Start();
                break;
            }

            case CommandType.Stop:
            {
                _streamManager.Stop(int.Parse(args[1]));
                break;
            }
            }
        }
Пример #29
0
 private void SetUpShims()
 {
     shimsContext = ShimsContext.Create();
     guid         = Guid.NewGuid();
     spWeb        = new ShimSPWeb()
     {
         IDGet   = () => guid,
         SiteGet = () => new ShimSPSite()
         {
             IDGet             = () => guid,
             WebApplicationGet = () => new ShimSPWebApplication(),
             RootWebGet        = () => new ShimSPWeb()
         },
         PropertiesGet = () =>
         {
             var propertyBag = new ShimSPPropertyBag();
             var sd          = new ShimStringDictionary(propertyBag);
             sd.ItemGetString = (key) =>
             {
                 return("EPMLive_MyWork_Grid_GlobalViews");
             };
             return(propertyBag);
         }
     }.Instance;
     ShimSqlConnection.AllInstances.Open  = _ => { };
     ShimSqlConnection.AllInstances.Close = _ => { };
     ShimSPSecurity.RunWithElevatedPrivilegesSPSecurityCodeToRunElevated = _ => { };
     ShimSPPersistedObject.AllInstances.IdGet = _ => guid;
     ShimCoreFunctions.getReportingConnectionStringGuidGuid = (_, _1) => ConnectionString;
     ShimCoreFunctions.getConfigSettingSPWebString          = (_, _1) => string.Empty;
     threadManager   = new ThreadManager(new DBConnectionManager(spWeb, false));
     activityManager = new ActivityManager(new DBConnectionManager(spWeb, false));
     streamManager   = new StreamManager(new DBConnectionManager(spWeb, false));
 }
Пример #30
0
        public void ShouldDetectCorrectDataUrl()
        {
            var manager = new StreamManager(_htmlUri, new StreamDownloader());

            manager.DownloadAndParseData();
            Assert.AreEqual(_dataUrl, manager.DataUrl);
        }
        internal MobileStreamingProcessor(IMobileConfiguration configuration,
                                          IFlagCacheManager cacheManager,
                                          User user,
                                          StreamManager.EventSourceCreator eventSourceCreator)
        {
            this._configuration = configuration;
            this._cacheManager  = cacheManager;
            this._user          = user;

            StreamProperties streamProperties;

            if (_configuration.UseReport)
            {
                streamProperties = MakeStreamPropertiesForREPORT();
            }
            else
            {
                streamProperties = MakeStreamPropertiesForGET();
            }

            _streamManager = new StreamManager(this,
                                               streamProperties,
                                               _configuration,
                                               MobileClientEnvironment.Instance,
                                               eventSourceCreator);
        }
Пример #32
0
        public StreamManagerViewModel(Account account)
        {
            _selectedIndex = -1;
            _accountModel = account;
            _streamManagerModel = account.Stream;
            _streams = ViewModelHelper.CreateReadOnlyDispatcherCollection(
                _streamManagerModel.Streams, item => new StreamViewModel(item), App.Current.Dispatcher);

            CompositeDisposable.Add(_thisPropChangedEventListener = new PropertyChangedEventListener(this));
            _thisPropChangedEventListener.Add(() => IsActive, IsActive_PropertyChanged);
        }
Пример #33
0
        public StreamViewModel(Stream circle, Account account, StreamManager manager)
        {
            _circleModel = circle;
            _name = circle.Name;
            _circleManagerModel = manager;
            _accountModel = account;
            _isConnected = true;
            _activities = new ObservableCollection<ViewModelBase>();
            ReconnectCommand = new RelayCommand(ReconnectCommand_Executed);
            ResumeCommand = new RelayCommand(ReconnectCommand_Executed);

            _resumeButton = new ResumeButtonViewModel(ResumeCommand);
            _circleModel.ChangedStatus += _circleModel_ChangedStatus;
            _circleModel.ChangedChangedActivityCount += _circleModel_ChangedChangedActivityCount;
            PropertyChanged += StreamViewModel_PropertyChanged;
        }