Пример #1
0
        static void CleanUpProvider(KnowledgeSyncProvider provider)
        {
            AppointmentSyncProvider   outlookProvider = provider as AppointmentSyncProvider;
            CalendarEventSyncProvider ibnProvider     = provider as CalendarEventSyncProvider;

            if (outlookProvider != null)
            {
                // Remove the data store file
                string metafile = outlookProvider.CurrentSetting.CurrentSyncAppSetting.metaDataFileName;
                if (System.IO.File.Exists(metafile))
                {
                    System.IO.File.Delete(metafile);
                }
            }
            else if (ibnProvider != null)
            {
                FilterElement filterEl = new FilterElement(SynchronizationMetadataRow.ColumnReplicaId, FilterElementType.Equal, ibnProvider.ReplicaId.GetGuidId());
                foreach (SynchronizationMetadataRow row in SynchronizationMetadataRow.List(filterEl))
                {
                    BusinessManager.Delete(new CalendarEventEntity((PrimaryKeyId)row.Uri));

                    row.Delete();
                }
                SynchronizationReplicaRow.Delete(ibnProvider.ReplicaId.GetGuidId());
            }
        }
Пример #2
0
        /// <summary>
        /// Открывает хранилище метаданных реплики по ее replicaId.
        /// </summary>
        /// <param name="replicaId">The replica id.</param>
        /// <returns></returns>
        public static ReplicaMetadataAdaptor CreateInstance(SyncId replicaId)
        {
            ReplicaMetadataAdaptor    retVal = null;
            SynchronizationReplicaRow row    = null;

            row    = new SynchronizationReplicaRow(replicaId.GetGuidId());
            retVal = new ReplicaMetadataAdaptor(row);

            return(retVal);
        }
Пример #3
0
        /// <summary>
        /// Создает новое хранилище метаданных реплики
        /// </summary>
        /// <param name="replicaId">The replica id.</param>
        /// <param name="idFormats">The id formats.</param>
        /// <returns></returns>
        public static ReplicaMetadataAdaptor CreateInstance(SyncId replicaId, SyncIdFormatGroup idFormats)
        {
            SynchronizationReplicaRow row = new SynchronizationReplicaRow();

            row.TickCount = 1;
            ReplicaMetadataAdaptor retVal = new ReplicaMetadataAdaptor(row);

            retVal._replicaRow.PrimaryKeyId = replicaId.GetGuidId();
            retVal.ReplicaKeyMap            = new ReplicaKeyMap(idFormats, replicaId);
            retVal.CurrentKnowledge         = new SyncKnowledge(idFormats, retVal.ReplicaKeyMap, (ulong)retVal.TickCount);
            retVal.ForgottenKnowledge       = new ForgottenKnowledge(idFormats, retVal.CurrentKnowledge);
            return(retVal);
        }
Пример #4
0
        /// <summary>
        /// Открывает хранилище метаданных по principalId
        /// </summary>
        /// <param name="pricipalId">The pricipal id.</param>
        /// <returns></returns>
        public static ReplicaMetadataAdaptor CreateInstance(int pricipalId)
        {
            if (pricipalId == -1)
            {
                throw new ArgumentException("principalId");
            }
            ReplicaMetadataAdaptor retVal   = null;
            FilterElement          filterEl = new FilterElement(SynchronizationReplicaRow.ColumnPrincipalId, FilterElementType.Equal, pricipalId);

            foreach (SynchronizationReplicaRow replicaRow in SynchronizationReplicaRow.List(filterEl))
            {
                retVal = new ReplicaMetadataAdaptor(replicaRow);
                break;
            }

            return(retVal);
        }
Пример #5
0
 private ReplicaMetadataAdaptor(SynchronizationReplicaRow replicaRow)
 {
     _replicaRow = replicaRow;
 }