Example #1
0
        public static RetentionTrigger GetTriggerByTitle(IRecordsManagerClient client, string title)
        {
            //Get Trigger By Title
            //Searching for triggers by Title, using a case-insensitive comparison on the returned results

            int              page           = 1;
            int              pageSize       = 10;
            bool             hasMorePages   = false;
            StringComparison caseComparison = StringComparison.OrdinalIgnoreCase; //Ignore casing
            IClientPagedItems <RetentionTrigger> pagedTriggers = null;
            RetentionTrigger trigger = null;

            do
            {
                pagedTriggers = client.SearchTriggers(title, page, pageSize);

                hasMorePages = page++ < pagedTriggers.PageCount;

                trigger = pagedTriggers.Items
                          .Where(item => (item.TriggerType == RetentionTriggerType.Event) &&
                                 (item.Recurrence == RetentionEventRecurrence.Manual) &&
                                 (item.Title.Equals(title, caseComparison)))
                          .FirstOrDefault();
            }while (hasMorePages && (trigger == null));

            return(trigger);
        }
        public static RetentionTrigger GetTriggerByTitle(IRecordsManagerClient client, string title)
        {
            //Get Trigger By Title
            //Searching for triggers by Title, using a case-insensitive comparison on the returned results

            int page = 1;
            int pageSize = 10;
            bool hasMorePages = false;
            StringComparison caseComparison = StringComparison.OrdinalIgnoreCase; //Ignore casing
            IClientPagedItems<RetentionTrigger> pagedTriggers = null;
            RetentionTrigger trigger = null;

            do
            {
                pagedTriggers = client.SearchTriggers(title, page, pageSize);

                hasMorePages = page++ < pagedTriggers.PageCount;

                trigger = pagedTriggers.Items
                                       .Where(item => (item.TriggerType == RetentionTriggerType.Event) &&
                                             (item.Recurrence == RetentionEventRecurrence.Manual) &&
                                             (item.Title.Equals(title, caseComparison)))
                                       .FirstOrDefault();

            }
            while (hasMorePages && (trigger == null));

            return trigger;
        }
Example #3
0
        public static RetentionTrigger GetFirstManualEventTrigger(IRecordsManagerClient client)
        {
            //Illustrates the following:
            //*Paging results by using IClientPagedItems
            //*Filtering results to a specific type of trigger

            int  page         = 1;
            int  pageSize     = 10;
            bool hasMorePages = false;
            IClientPagedItems <RetentionTrigger> pagedTriggers = null;
            RetentionTrigger trigger = null;

            do
            {
                pagedTriggers = client.GetTriggers(page, pageSize);

                hasMorePages = page++ < pagedTriggers.PageCount;

                trigger = pagedTriggers.Items
                          .Where(item => (item.TriggerType == RetentionTriggerType.Event) && (item.Recurrence == RetentionEventRecurrence.Manual))
                          .FirstOrDefault();
            } while (hasMorePages && (trigger == null));

            return(trigger);
        }
        public static RetentionTrigger GetFirstManualEventTrigger(IRecordsManagerClient client)
        {
            //Illustrates the following:
            //*Paging results by using IClientPagedItems
            //*Filtering results to a specific type of trigger

            int page = 1;
            int pageSize = 10;
            bool hasMorePages = false;
            IClientPagedItems<RetentionTrigger> pagedTriggers = null;
            RetentionTrigger trigger = null;

            do
            {
                pagedTriggers = client.GetTriggers(page, pageSize);

                hasMorePages = page++ < pagedTriggers.PageCount;

                trigger = pagedTriggers.Items
                                       .Where(item => (item.TriggerType == RetentionTriggerType.Event) && (item.Recurrence == RetentionEventRecurrence.Manual))
                                       .FirstOrDefault();
            } while (hasMorePages && (trigger == null));

            return trigger;
        }
 public static Asset CreateAsset(this IRecordsManagerClient rmClient, Asset asset)
 {
     return(rmClient.Post <IEnumerable <Asset> >(POST_ASSET.FormatResourceUrl(), new List <Asset>()
     {
         asset
     }).First());
 }
        private static void CreateEventOccurrence(string url)
        {
            //Create a new client using default network credentials
            IRecordsManagerClient client = RecordsManagerClientFactory.Create(url);

            //Currently for a production scenario, you would need to get the retention trigger by ID
            //This sample finds the first manual, event-based, retention trigger and uses that instead.
            RetentionTrigger retentionTrigger = RetentionTriggerIntegrations.GetFirstManualEventTrigger(client);

            //Create an event occurrence for the specified trigger using the specified property name & value
            EventOccurrence eventOccurrence = EventOccurrenceIntegration.CreatePropertyEventOccurrence(client, retentionTrigger.Id, "LoanNumber", "12345");
        }
        public static EventOccurrence CreatePropertyEventOccurrence(IRecordsManagerClient client, long triggerId, string propertyName, string propertyValue)
        {
            var eventOccurrence = new EventOccurrence();
            eventOccurrence.EventDate = DateTime.Now; //EventDate is when this occurrence actually happened; does not have to be DateTime.Now
            eventOccurrence.EventTriggerId = triggerId;
            eventOccurrence.TargetType = EventOccurrenceTargetType.Property;
            eventOccurrence.TargetProperty = propertyName;
            eventOccurrence.TargetValue = propertyValue;

            Debug.Assert(eventOccurrence.Id == 0, "The new event occurrence should have an ID equal to zero.");

            eventOccurrence = client.CreateEventOccurrence(eventOccurrence);

            Debug.Assert(eventOccurrence.Id > 0, "The created event occurrence should have an ID greater than zero.");

            return eventOccurrence;
        }
Example #8
0
        public static EventOccurrence CreatePropertyEventOccurrence(IRecordsManagerClient client, long triggerId, string propertyName, string propertyValue)
        {
            var eventOccurrence = new EventOccurrence();

            eventOccurrence.EventDate      = DateTime.Now; //EventDate is when this occurrence actually happened; does not have to be DateTime.Now
            eventOccurrence.EventTriggerId = triggerId;
            eventOccurrence.TargetType     = EventOccurrenceTargetType.Property;
            eventOccurrence.TargetProperty = propertyName;
            eventOccurrence.TargetValue    = propertyValue;

            Debug.Assert(eventOccurrence.Id == 0, "The new event occurrence should have an ID equal to zero.");

            eventOccurrence = client.CreateEventOccurrence(eventOccurrence);

            Debug.Assert(eventOccurrence.Id > 0, "The created event occurrence should have an ID greater than zero.");

            return(eventOccurrence);
        }
 public static Container GetContainer(this IRecordsManagerClient rmClient, string barcode)
 {
     return(rmClient.Get <Container>(GET_CONTAINER_WITH_BARCODE.FormatResourceUrl(barcode)));
 }
 public static IEnumerable <AssetCustomMetadata> GetAssetCustomMetadata(this IRecordsManagerClient rmClient, Guid id)
 {
     return(rmClient.Get <IEnumerable <AssetCustomMetadata> >(GET_ASSETCUSTOMMETADATA.FormatResourceUrl(id)));
 }
 public static Container GetContainer(this IRecordsManagerClient rmClient, Guid id)
 {
     return(rmClient.Get <Container>(GET_CONTAINER_WITH_ID.FormatResourceUrl(id)));
 }
Example #12
0
 public static RetentionTrigger GetTriggerById(IRecordsManagerClient client, long id)
 {
     return(client.GetTrigger(id));
 }
 public static CustomMetadata UpdateCustomMetadata(this IRecordsManagerClient rmClient, CustomMetadata customMetadata)
 {
     return(rmClient.Put <CustomMetadata>(PUT_CUSTOMMETADATA.FormatResourceUrl(customMetadata.Id), customMetadata));
 }
 public static RetentionTrigger GetTriggerById(IRecordsManagerClient client, long id)
 {
     return client.GetTrigger(id);
 }
 public static ContainerCustomMetadata CreateContainerCustomMetadata(this IRecordsManagerClient rmClient, ContainerCustomMetadata containerCustomMetadata)
 {
     return(rmClient.Post <ContainerCustomMetadata>(POST_CONTAINERCUSTOMMETADATA.FormatResourceUrl(), containerCustomMetadata));
 }
 public static ProcessorItem ApproveProcessingItem(this IRecordsManagerClient rmClient, ProcessorItem processorItem)
 {
     return(rmClient.Put <ProcessorItem>(PUT_APPROVEPROCESSINGITEMDATA.FormatResourceUrl(), processorItem));
 }
        public static IEnumerable <Container> SearchContainers(this IRecordsManagerClient rmClient, string title)
        {
            var page = rmClient.SearchContainers(title, 0, 0);

            return(page.Items);
        }
 public static ProcessorItem GetProcessingItem(this IRecordsManagerClient rmClient, long id)
 {
     return(rmClient.Get <ProcessorItem>(GET_PROCESSINGITEMDATA.FormatResourceUrl(id)));
 }
 public static IClientPagedItems <ProcessorItem> GetProcessingItems(this IRecordsManagerClient rmClient, int page, int pageSize)
 {
     return(rmClient.Get <ClientPagedItems <ProcessorItem> >(GET_PROCESSINGITEMSDATA.FormatResourceUrl(page, pageSize)));
 }
 public static void DeleteAssetCustomMetadata(this IRecordsManagerClient rmClient, long customMetadataId, Guid assetId)
 {
     rmClient.Delete(DELETE_ASSETCUSTOMMETADATA.FormatResourceUrl(customMetadataId, assetId));
 }
 public static IEnumerable <AssetCustomMetadata> UpdateAssetCustomMetadata(this IRecordsManagerClient rmClient, Guid assetId, IEnumerable <AssetCustomMetadata> customMetadata)
 {
     return(rmClient.Put <IEnumerable <AssetCustomMetadata> >(PUT_ASSETCUSTOMMETADATA.FormatResourceUrl(assetId), customMetadata));
 }
 public static AssetCustomMetadata CreateAssetCustomMetadata(this IRecordsManagerClient rmClient, AssetCustomMetadata assetCustomMetadata)
 {
     return(rmClient.Post <AssetCustomMetadata>(POST_ASSETCUSTOMMETADATA.FormatResourceUrl(), assetCustomMetadata));
 }
 public static Container CreateContainer(this IRecordsManagerClient rmClient, Container container)
 {
     return(rmClient.Post <Container>(POST_CONTAINER.FormatResourceUrl(), container));
 }
 public static CustomMetadata CreateCustomMetadata(this IRecordsManagerClient rmClient, CustomMetadata customMetadata)
 {
     return(rmClient.Post <CustomMetadata>(POST_CUSTOMMETADATA.FormatResourceUrl(), customMetadata));
 }
 public static IEnumerable <ContainerCustomMetadata> UpdateContainerCustomMetadata(this IRecordsManagerClient rmClient, Guid containerId, IEnumerable <ContainerCustomMetadata> customMetadata)
 {
     return(rmClient.Put <IEnumerable <ContainerCustomMetadata> >(PUT_CONTAINERCUSTOMMETADATA.FormatResourceUrl(containerId), customMetadata));
 }
        public static IEnumerable <Container> GetAllContainers(this IRecordsManagerClient rmClient)
        {
            var page = rmClient.GetAllContainers(0, 0);

            return(page.Items);
        }
 public static DateTime GetContainerLastEdit(this IRecordsManagerClient rmClient)
 {
     return(rmClient.Get <DateTime>(GET_CONTAINERS_LASTEDIT.FormatResourceUrl()));
 }
 public static IClientPagedItems <Container> GetAllContainers(this IRecordsManagerClient rmClient, int page, int pageSize)
 {
     return(rmClient.Get <ClientPagedItems <Container> >(GET_CONTAINERS_ALL.FormatResourceUrl(page, pageSize)));
 }
 public static IEnumerable <ContainerCustomMetadata> GetContainerCustomMetadata(this IRecordsManagerClient rmClient, Guid id)
 {
     return(rmClient.Get <IEnumerable <ContainerCustomMetadata> >(GET_CONTAINERCUSTOMMETADATA.FormatResourceUrl(id)));
 }
        public static IEnumerable <Container> GetContainers(this IRecordsManagerClient rmClient, Guid?parentId = null)
        {
            var page = rmClient.GetContainers(0, 0, parentId);

            return(page.Items);
        }
 public static void DeleteCustomMetadata(this IRecordsManagerClient rmClient, long id)
 {
     rmClient.Delete(DELETE_CUSTOMMETADATA_WITH_ID.FormatResourceUrl(id));
 }
 public static IClientPagedItems <Container> GetContainers(this IRecordsManagerClient rmClient, int page, int pageSize, Guid?parentId = null)
 {
     return(rmClient.Get <ClientPagedItems <Container> >(GET_CONTAINERS.FormatResourceUrl(page, pageSize, (parentId.HasValue) ? parentId.Value.ToString() : string.Empty)));
 }
 public static IClientPagedItems <Container> SearchContainers(this IRecordsManagerClient rmClient, string title, int page, int pageSize)
 {
     return(rmClient.Get <ClientPagedItems <Container> >(GET_CONTAINERS_CONTAINING_TITLE.FormatResourceUrl(title, page, pageSize)));
 }
 public static void DeleteContainerCustomMetadata(this IRecordsManagerClient rmClient, long customMetadataId, Guid containerId)
 {
     rmClient.Delete(DELETE_CONTAINERCUSTOMMETADATA.FormatResourceUrl(customMetadataId, containerId));
 }