private void RenderSyncUI(GUIStyle sty, GUIStyle but)
        {
            if (!CheckVessel())
            {
                _flyByWire = false;
                Mode       = UIMode.SELECTED;
            }

            if (GUILayout.Button("Sync Orbits", but, GUILayout.ExpandWidth(true)))
            {
                Mode       = UIMode.SELECTED;
                _flyByWire = false;
            }

            GUILayout.EndVertical();

            GUILayout.BeginHorizontal();
            for (int i = 0; i < NumberOfPredictedSyncPoints; i++)
            {
                if (i != (int)SyncMode)
                {
                    continue;
                }

                if (GUILayout.Button(SyncMode.ToString(), but, GUILayout.ExpandWidth(true)))
                {
                    if (i == NumberOfPredictedSyncPoints - 1)
                    {
                        SyncMode = 0;
                    }
                    else
                    {
                        SyncMode = SyncMode + 1;
                    }
                }
                //GUILayout.Box(SyncMode.ToString(),but);
            }
            GUILayout.EndHorizontal();

            GUILayout.BeginVertical();

            GUILayout.Box("Orbit		ShipToR		TgtToR ", GUILayout.ExpandWidth(true));
            for (int i = 0; i < 4; i++)
            {
                GUILayout.Box(_syncString[i]);
            }

            GUILayout.Label("Closest Approach on Orbit " + _closestApproachOrbit.ToString(), sty);
            GUILayout.Label("Min Separation (sec) : " + _minimumPredictedTimeFromTarget.ToString("f1"), sty);

            if (automation == true)
            {
                if (GUILayout.Button(_autoPhaser ? _autoPhaserState.ToString() : "Auto Sync", but, GUILayout.ExpandWidth(true)))
                {
                    _autoPhaser      = !_autoPhaser;
                    _autoPhaserState = AutoPhaserState.Step1WaitForTargetApsis;
                }
            }
        }
Пример #2
0
 public SynchronizationBehavior(string fileName, Etag sourceFileEtag, RavenJObject sourceMetadata, FileSystemInfo sourceFs, SynchronizationType type, RavenFileSystem fs)
 {
     this.fileName       = fileName;
     this.sourceFileEtag = sourceFileEtag;
     this.sourceMetadata = sourceMetadata;
     this.sourceFs       = sourceFs;
     this.type           = type;
     this.fs             = fs;
 }
Пример #3
0
 public SynchronizationBehavior(string fileName, Etag sourceFileEtag, RavenJObject sourceMetadata, FileSystemInfo sourceFs, SynchronizationType type, RavenFileSystem fs)
 {
     this.fileName = fileName;
     this.sourceFileEtag = sourceFileEtag;
     this.sourceMetadata = sourceMetadata;
     this.sourceFs = sourceFs;
     this.type = type;
     this.fs = fs;
 }
Пример #4
0
 public SynchronizationStrategy(double targetFps, SynchronizationType synchronizationType)
 {
     _targetFps           = targetFps;
     _secondsPerFrame     = 1d / targetFps;
     _synchronizationType = synchronizationType;
     if (_synchronizationType == SynchronizationType.VSync)
     {
         IScreenControl screenControl = ServiceRegistration.Get <IScreenControl>();
         screenControl.VideoPlayerSynchronizationStrategy.SynchronizeToVideoPlayerFramerate += SyncToPlayer;
     }
 }
        public override void BeforeSynchronization(string name, RavenJObject metadata, SynchronizationType type)
        {
            if(type != SynchronizationType.ContentUpdate)
                return;

            FileSystem.Storage.Batch(accessor =>
            {
                FileVersioningConfiguration versioningConfiguration;
                if (actions.TryGetVersioningConfiguration(name, metadata, accessor, out versioningConfiguration) == false)
                    return;

                var revision = actions.GetNextRevisionNumber(name, accessor);

                metadata.__ExternalState["Synchronization-Next-Revision"] = revision;
            });
        }
Пример #6
0
        public void IncomingSynchronizationStarted(string fileName, FileSystemInfo sourceFileSystemInfo, Guid sourceFileETag, SynchronizationType type)
        {
            var activeForDestination = activeIncomingSynchronizations.GetOrAdd(sourceFileSystemInfo.Url,
                                                       new ConcurrentDictionary<string, SynchronizationDetails>());

            var syncDetails = new SynchronizationDetails
            {
                DestinationUrl = sourceFileSystemInfo.Url,
                FileETag = sourceFileETag,
                FileName = fileName,
                Type = type
            };

            if (activeForDestination.TryAdd(fileName, syncDetails))
            {
                Log.Debug("File '{0}' with ETag {1} was added to an incoming active synchronization queue for a destination {2}",
                          fileName,
                          sourceFileETag, sourceFileSystemInfo.Url);
            }
        }
 public SynchronizationConfiguration(Guid sourceCalendarConfigurationId,
                                     Guid destinationCalendarConfigurationId,
                                     SynchronizationType synchronizationType,
                                     int daysInPastToSync,
                                     int daysInFutureToSync,
                                     int minutesBetweenSynchronization,
                                     DateTimeOffset? lastSynchronization,
                                     DateTimeOffset? lastSyncBehindDate,
                                     DateTimeOffset? lastSyncAheadDate)
 {
     SourceCalendarConfigurationId = sourceCalendarConfigurationId;
     DestinationCalendarConfigurationId = destinationCalendarConfigurationId;
     SynchronizationType = synchronizationType;
     DaysInPastToSync = daysInPastToSync;
     DaysInFutureToSync = daysInFutureToSync;
     MinutesBetweenSynchronization = minutesBetweenSynchronization;
     LastSynchronization = lastSynchronization;
     LastSyncBehindDate = lastSyncBehindDate;
     LastSyncAheadDate = lastSyncAheadDate;
 }
        public override void AfterSynchronization(string name, RavenJObject metadata, SynchronizationType type, dynamic additionalData)
        {
            if (type != SynchronizationType.ContentUpdate)
                return;

            FileSystem.Storage.Batch(accessor =>
            {
                FileVersioningConfiguration versioningConfiguration;
                if (actions.TryGetVersioningConfiguration(name, metadata, accessor, out versioningConfiguration) == false)
                    return;

                var revision = (long) metadata.__ExternalState["Synchronization-Next-Revision"];

                var tempFileRevision = string.Format("{0}/revisions/{1}", additionalData.TempFileName, revision);
                var fileRevision = string.Format("{0}/revisions/{1}", name, revision);

                accessor.RenameFile(tempFileRevision, fileRevision, true);

                actions.RemoveOldRevisions(name, revision, versioningConfiguration);
            });
        }	
		public SynchronizationReport(string fileName, Guid fileETag, SynchronizationType type)
		{
			FileName = fileName;
			FileETag = fileETag;
			Type = type;
		}
Пример #10
0
        public async Task <Model.Synchronization> CreateSynchronization(Guid accountId, SynchronizationType type = null)
        {
            var response = await _client.PostAsync("synchronizations", new StringContent(JsonConvert.SerializeObject(new
            {
                data = new
                {
                    type = "synchronization",
                    attributes = new
                    {
                        resourceType = "account",
                        resourceId = accountId,
                        subtype = type?.Value ?? SynchronizationType.AccountDetails.Value
                    }
                }
            }), Encoding.UTF8, "application/json"));

            if (response.IsSuccessStatusCode)
            {
                var sync = (await response.GetAs <BasicResponse <Model.Synchronization> >()).Data;
                sync.Bind(this._myPontoApi);
                return(sync);
            }
            else
            {
                var errorResponse = await response.GetAs <ErrorResponse>();

                throw new MyPontoException(errorResponse);
            }
        }
Пример #11
0
        private void CreateSyncingConfiguration(string fileName, Guid etag, string destinationFileSystemUrl, SynchronizationType synchronizationType)
        {
            try
            {
                var name = RavenFileNameHelper.SyncNameForFile(fileName, destinationFileSystemUrl);

                var details = new SynchronizationDetails
                {
                    DestinationUrl = destinationFileSystemUrl,
                    FileName = fileName,
                    FileETag = etag,
                    Type = synchronizationType
                };

                storage.Batch(accessor => accessor.SetConfig(name, JsonExtensions.ToJObject(details)));
            }
            catch (Exception e)
            {
                Log.WarnException(
                    string.Format("Could not create syncing configurations for a file {0} and destination {1}", fileName, destinationFileSystemUrl),
                    e);
            }
        }
Пример #12
0
		public virtual void AfterSynchronization(string name, RavenJObject metadata, SynchronizationType type, dynamic additionalData)
		{
		}
        public override void AfterSynchronization(string name, RavenJObject metadata, SynchronizationType type, dynamic additionalData)
        {
            if (type != SynchronizationType.ContentUpdate)
            {
                return;
            }

            FileSystem.Storage.Batch(accessor =>
            {
                FileVersioningConfiguration versioningConfiguration;
                if (actions.TryGetVersioningConfiguration(name, metadata, accessor, out versioningConfiguration) == false)
                {
                    return;
                }

                var revision = (long)metadata.__ExternalState["Synchronization-Next-Revision"];

                var tempFileRevision = string.Format("{0}/revisions/{1}", additionalData.TempFileName, revision);
                var fileRevision     = string.Format("{0}/revisions/{1}", name, revision);

                accessor.RenameFile(tempFileRevision, fileRevision, true);

                actions.RemoveOldRevisions(name, revision, versioningConfiguration);
            });
        }
        /// <summary>
        /// Parse the RopSynchronizationConfigureRequest structure.
        /// </summary>
        /// <param name="s">An stream containing RopSynchronizationConfigureRequest structure.</param>
        public override void Parse(Stream s)
        {
            base.Parse(s);

            this.RopId = (RopIdType)ReadByte();
            this.LogonId = ReadByte();
            this.InputHandleIndex = ReadByte();
            this.OutputHandleIndex = ReadByte();
            this.SynchronizationType = (SynchronizationType)ReadByte();
            this.SendOptions = (SendOptions)ReadByte();
            this.SynchronizationFlags = (SynchronizationFlags)ReadUshort();
            this.RestrictionDataSize = ReadUshort();

            if (RestrictionDataSize > 0)
            {
                this.RestrictionData = new RestrictionType();
                this.RestrictionData.Parse(s);
            }
            this.SynchronizationExtraFlags = (SynchronizationExtraFlags)ReadUint();
            this.PropertyTagCount = ReadUshort();
            PropertyTag[] InterTag = new PropertyTag[(int)this.PropertyTagCount];
            for (int i = 0; i < this.PropertyTagCount; i++)
            {
                InterTag[i] = new PropertyTag();
                InterTag[i].Parse(s);
            }
            this.PropertyTags = InterTag;
        }
Пример #15
0
 public SynchronizationReport(string fileName, Guid fileETag, SynchronizationType type)
 {
     FileName = fileName;
     FileETag = fileETag;
     Type     = type;
 }
 /// <summary>
 /// Constructor to allow for creating an indexer at runtime with a specified lucene directory
 /// </summary>
 /// <param name="analyzer"></param>
 /// <param name="synchronizationType"></param>
 /// <param name="luceneDirectory"></param>
 public UmbracoExamineIndexer(Analyzer analyzer, SynchronizationType synchronizationType, Lucene.Net.Store.Directory luceneDirectory)
     : base(analyzer, synchronizationType, luceneDirectory)
 {
 }
Пример #17
0
 internal static extern ErrorCode GetSynchType(this UsbEndpointHandle /* usb_host_endpoint_h */ ep, out SynchronizationType /* usb_host_iso_sync_type_e */ synchType);
 /// <summary>
 /// Constructor to allow for creating an indexer at runtime
 /// </summary>
 /// <param name="workingFolder"></param>
 /// <param name="analyzer"></param>
 /// <param name="synchronizationType"></param>
 public UmbracoExamineIndexer(DirectoryInfo workingFolder, Analyzer analyzer, SynchronizationType synchronizationType)
     : base(workingFolder, analyzer, synchronizationType)
 {
 }
Пример #19
0
    private void RenderSyncUI(GUIStyle sty)
    {
        if (!CheckVessel())
        {
            _flyByWire = false;
            Mode = UIMode.SELECTED;
        }

        if (GUILayout.Button("Sync Orbits", sty, GUILayout.ExpandWidth(true)))
        {
            Mode = UIMode.SELECTED;
            _flyByWire = false;
        }

        GUILayout.EndVertical();

        GUILayout.BeginHorizontal();
        for (int i = 0; i < NumberOfPredictedSyncPoints; i++)
        {
            if (i != (int) SyncMode)
                continue;

            if (GUILayout.Button(" ", sty, GUILayout.ExpandWidth(true)))
            {
                if (i == NumberOfPredictedSyncPoints - 1) SyncMode = 0;
                else SyncMode = SyncMode + 1;
            }
            GUILayout.Box(SyncMode.ToString());
        }
        GUILayout.EndHorizontal();
        GUILayout.BeginVertical();

        GUILayout.Box("Orbit		ShipToR		TgtToR ", sty, GUILayout.ExpandWidth(true));
        for (int i = 0; i < 4; i++)
            GUILayout.Box(_syncString[i]);

        GUILayout.Box("Closest Approach on Orbit " + _closestApproachOrbit.ToString());
        GUILayout.Box("Min Separation (sec) : " + _minimumPredictedTimeFromTarget.ToString("f1"));

        if(GUILayout.Button(_autoPhaser ? _autoPhaserState.ToString() : "Auto Sync", sty, GUILayout.ExpandWidth(true)))
        {
            _autoPhaser = !_autoPhaser;
            _autoPhaserState = AutoPhaserState.Step1WaitForTargetApsis;
        }
    }
Пример #20
0
 /// <summary>
 /// Constructor to allow for creating an indexer at runtime
 /// </summary>
 /// <param name="workingFolder"></param>
 /// <param name="analyzer"></param>
 /// <param name="synchronizationType"></param>
 public UmbracoExamineIndexer(DirectoryInfo workingFolder, Analyzer analyzer, SynchronizationType synchronizationType)
     : base(workingFolder, analyzer, synchronizationType)
 {              
 }
Пример #21
0
 private void PublishSynchronizationNotification(string fileSystemName, string fileName, ServerInfo sourceServer, SynchronizationType type, SynchronizationAction action)
 {
     Publisher.Publish(new SynchronizationUpdateNotification
     {
         FileName            = fileName,
         SourceFileSystemUrl = sourceServer.FileSystemUrl,
         SourceServerId      = sourceServer.Id,
         Type      = type,
         Action    = action,
         Direction = SynchronizationDirection.Incoming
     });
 }
Пример #22
0
 public override void Deserialize(IUnmanagedMemoryReader reader)
 {
     base.Deserialize(reader);
     Type = (SynchronizationType)reader.ReadByte();
 }
Пример #23
0
		public virtual void BeforeSynchronization(string name, RavenJObject metadata, SynchronizationType type)
		{
		}
 public virtual void AfterSynchronization(string name, RavenJObject metadata, SynchronizationType type, dynamic additionalData)
 {
 }
        public override void BeforeSynchronization(string name, RavenJObject metadata, SynchronizationType type)
        {
            if (type != SynchronizationType.ContentUpdate)
            {
                return;
            }

            FileSystem.Storage.Batch(accessor =>
            {
                FileVersioningConfiguration versioningConfiguration;
                if (actions.TryGetVersioningConfiguration(name, metadata, accessor, out versioningConfiguration) == false)
                {
                    return;
                }

                var revision = actions.GetNextRevisionNumber(name, accessor);

                metadata.__ExternalState["Synchronization-Next-Revision"] = revision;
            });
        }
Пример #26
0
        public void IncomingSynchronizationStarted(string fileName, FileSystemInfo sourceFileSystemInfo, Guid sourceFileETag, SynchronizationType type)
        {
            var activeForDestination = activeIncomingSynchronizations.GetOrAdd(sourceFileSystemInfo.Url,
                                                                               new ConcurrentDictionary <string, SynchronizationDetails>());

            var syncDetails = new SynchronizationDetails
            {
                DestinationUrl = sourceFileSystemInfo.Url,
                FileETag       = sourceFileETag,
                FileName       = fileName,
                Type           = type
            };

            if (activeForDestination.TryAdd(fileName, syncDetails))
            {
                if (Log.IsDebugEnabled)
                {
                    Log.Debug("File '{0}' with ETag {1} was added to an incoming active synchronization queue for a destination {2}", fileName, sourceFileETag, sourceFileSystemInfo.Url);
                }
            }
        }
		private void PublishSynchronizationNotification(string fileName, ServerInfo sourceServer, SynchronizationType type,
		                                                SynchronizationAction action)
		{
			Publisher.Publish(new SynchronizationUpdate
				                  {
					                  FileName = fileName,
					                  SourceServerUrl = sourceServer.Url,
					                  SourceServerId = sourceServer.Id,
					                  Type = type,
					                  Action = action,
					                  SynchronizationDirection = SynchronizationDirection.Incoming
				                  });
		}
Пример #28
0
        private void CreateSyncingConfiguration(string fileName, Guid etag, string destinationFileSystemUrl, SynchronizationType synchronizationType)
        {
            try
            {
                var name = RavenFileNameHelper.SyncNameForFile(fileName, destinationFileSystemUrl);

                var details = new SynchronizationDetails
                {
                    DestinationUrl = destinationFileSystemUrl,
                    FileName       = fileName,
                    FileETag       = etag,
                    Type           = synchronizationType
                };

                storage.Batch(accessor => accessor.SetConfig(name, JsonExtensions.ToJObject(details)));
            }
            catch (Exception e)
            {
                Log.WarnException(
                    string.Format("Could not create syncing configurations for a file {0} and destination {1}", fileName, destinationFileSystemUrl),
                    e);
            }
        }
 public virtual void BeforeSynchronization(string name, RavenJObject metadata, SynchronizationType type)
 {
 }
Пример #30
0
 /// <summary>
 /// Constructor to allow for creating an indexer at runtime with a specified lucene directory
 /// </summary>
 /// <param name="analyzer"></param>
 /// <param name="synchronizationType"></param>
 /// <param name="luceneDirectory"></param>
 public UmbracoExamineIndexer(Analyzer analyzer, SynchronizationType synchronizationType, Lucene.Net.Store.Directory luceneDirectory)
     : base(analyzer, synchronizationType, luceneDirectory)
 {
 }