/// <summary> /// Create children http request with specific options /// </summary> /// <param name="requestBuilder">request builder</param> /// <param name="top">The number of items to return in a result set.</param> /// <param name="orderBy">Sort the order of items in the response collection</param> /// <param name="filter">Filters the response based on a set of criteria.</param> /// <returns>Returns the http request</returns> public static IItemChildrenCollectionRequest CreateChildrenRequest(this IBaseRequestBuilder requestBuilder, int top, OrderBy orderBy = OrderBy.None, string filter = null) { IItemChildrenCollectionRequest oneDriveitemsRequest = null; if (orderBy == OrderBy.None && string.IsNullOrEmpty(filter)) { return(((IItemRequestBuilder)requestBuilder).Children.Request().Top(top)); } if (orderBy == OrderBy.None) { return(((IItemRequestBuilder)requestBuilder).Children.Request().Top(top).Filter(filter)); } string order = OneDriveHelper.TransformOrderByToODataString(orderBy); if (string.IsNullOrEmpty(filter)) { oneDriveitemsRequest = ((IItemRequestBuilder)requestBuilder).Children.Request().Top(top).OrderBy(order); } else { oneDriveitemsRequest = ((IItemRequestBuilder)requestBuilder).Children.Request().Top(top).OrderBy(order).Filter(filter); } return(oneDriveitemsRequest); }
public static IObservable <TEntity[]> ListAllItems <TEntity>(this IBaseRequestBuilder builder, ICloudOfficeToken cloudOfficeToken = null, Action <ICloudOfficeToken> saveToken = null, Func <TEntity, bool> filter = null) where TEntity : Entity { var request = (IBaseRequest)builder.CallMethod("Request"); return(request.ListAllItems(cloudOfficeToken, saveToken, filter)); }
/// <summary> /// Initializes a new instance of the <see cref="GraphOneDriveStorageItem"/> class. /// </summary> /// <param name="oneDriveProvider">Instance of Graph Client class</param> /// <param name="requestBuilder">Http request builder.</param> /// <param name="oneDriveItem">OneDrive's item</param> public GraphOneDriveStorageItem(IBaseClient oneDriveProvider, IBaseRequestBuilder requestBuilder, DriveItem oneDriveItem) { _requestBuilder = requestBuilder; _oneDriveProvider = oneDriveProvider; _oneDriveItem = oneDriveItem; _name = oneDriveItem.Name; _dateCreated = oneDriveItem.CreatedDateTime; _dateModified = oneDriveItem.LastModifiedDateTime; _displayName = _name; _folderId = oneDriveItem.Id; if (IsFile()) { _displayType = "File"; } else if (IsFolder()) { _displayType = "Folder"; } else { _displayType = "OneNote"; } // ParentReference null means is root if (oneDriveItem.ParentReference?.Path != null) { _path = oneDriveItem.ParentReference.Path.Replace("/drive/root:", string.Empty); } }
/// <summary> /// Initializes a new instance of the <see cref="OneDriveRequestSource{T}"/> class. /// </summary> /// <param name="provider">OneDrive Data Client Provider</param> /// <param name="requestBuilder">Http request to execute</param> /// <param name="orderBy">Sort the order of items in the response collection</param> /// <param name="filter">Filters the response based on a set of criteria.</param> public OneDriveRequestSource(IBaseClient provider, IBaseRequestBuilder requestBuilder, OrderBy orderBy, string filter) { _provider = provider; _requestBuilder = requestBuilder; _orderBy = orderBy; _filter = filter; }
private void OnProviderStateChanged(object sender, ProviderStateChangedEventArgs e) { if (e.NewState == ProviderState.SignedIn) { var graphClient = ProviderManager.Instance.GlobalProvider.GetClient(); TeamsChannelMessagesRequestBuilder = graphClient.Teams["02bd9fd6-8f93-4758-87c3-1fb73740a315"].Channels["19:[email protected]"].Messages; } else { ClearRequestBuilders(); } }
private void OnProviderStateChanged(object sender, ProviderStateChangedEventArgs e) { if (e.NewState == ProviderState.SignedIn) { var graphClient = ProviderManager.Instance.GlobalProvider.GetClient(); PlannerTasksRequestBuilder = graphClient.Me.Planner.Tasks; } else { ClearRequestBuilders(); } }
private void UpdateRequestBuilder() { var provider = ProviderManager.Instance.GlobalProvider; switch (provider?.State) { case ProviderState.SignedIn: RecentDriveItemsRequestBuilder = provider.GetClient().Me.Drive.Recent(); break; default: RecentDriveItemsRequestBuilder = null; break; } }
private object CreateItemGraphSdk(DriveItem oneDriveItem) { IBaseRequestBuilder requestBuilder = (IBaseRequestBuilder)((IGraphServiceClient)_provider).Drive.Items[oneDriveItem.Id]; if (oneDriveItem.Folder != null) { return(new OneDriveStorageFolder(_provider, requestBuilder, oneDriveItem)); } if (oneDriveItem.File != null) { return(new OneDriveStorageFile(_provider, requestBuilder, oneDriveItem)); } return(new OneDriveStorageItem(_provider, requestBuilder, oneDriveItem)); }
/// <summary> /// Initializes a new instance of the <see cref="OneDriveStorageItem"/> class. /// </summary> /// <param name="oneDriveProvider">Instance of Graph Client class</param> /// <param name="requestBuilder">Http request builder.</param> /// <param name="oneDriveItem">OneDrive's item</param> public OneDriveStorageItem(IBaseClient oneDriveProvider, IBaseRequestBuilder requestBuilder, DriveItem oneDriveItem) { StorageItemPlatformService = OneDriveService.ServicePlatformInitializer.CreateOneDriveStorageItemPlatformInstance(OneDriveService.Instance, this); RequestBuilder = requestBuilder; Provider = oneDriveProvider; OneDriveItem = oneDriveItem; Name = oneDriveItem.Name; FileSize = oneDriveItem.Size; DateCreated = oneDriveItem.CreatedDateTime; DateModified = oneDriveItem.LastModifiedDateTime; DisplayName = Name; FolderRelativeId = oneDriveItem.Id; if (IsFile()) { DisplayType = "File"; } else if (IsFolder()) { DisplayType = "Folder"; } else { DisplayType = "OneNote"; } // ParentReference null means is root if (oneDriveItem.ParentReference?.Path != null) { string rootMarker = "/root:"; int index = oneDriveItem.ParentReference.Path.LastIndexOf(rootMarker) + rootMarker.Length; if (index >= 0) { Path = oneDriveItem.ParentReference.Path.Substring(index); } } }
/// <summary> /// Initialize a OneDriveStorageItem /// </summary> /// <param name="oneDriveItem">A OneDrive item</param> /// <returns>New instance of OneDriveStorageItem</returns> protected IOneDriveStorageItem InitializeOneDriveStorageItem(DriveItem oneDriveItem) { IBaseRequestBuilder requestBuilder = (IBaseRequestBuilder)((IOneDriveClient)Provider).Drive.Items[oneDriveItem.Id]; return(new OneDriveStorageItem(Provider, requestBuilder, oneDriveItem)); }
private void ClearRequestBuilders() { PlannerTasksRequestBuilder = null; }
private void ClearRequestBuilders() { TeamsChannelMessagesRequestBuilder = null; }
private void ClearRequestBuilders() { CalendarViewRequestBuilder = null; }
public static IObservable <Entity[]> ListAllItems(this IBaseRequestBuilder builder, Action <ICloudOfficeToken> saveToken = null, ICloudOfficeToken cloudOfficeToken = null) => builder.ListAllItems <Entity>(cloudOfficeToken, saveToken);
/// <summary> /// Initializes a new instance of the <see cref="OneDriveStorageFile"/> class. /// <para>Permissions : Have full access to user files and files shared with user</para> /// </summary> /// <param name="graphProvider">Instance of Graph Client class</param> /// <param name="requestBuilder">Http request builder.</param> /// <param name="oneDriveItem">OneDrive's item</param> public OneDriveStorageFile(IBaseClient graphProvider, IBaseRequestBuilder requestBuilder, DriveItem oneDriveItem) : base(graphProvider, requestBuilder, oneDriveItem) { StorageFilePlatformService = OneDriveService.ServicePlatformInitializer.CreateOneDriveStorageFilePlatformInstance(OneDriveService.Instance, this); ParseFileType(oneDriveItem.Name); }
/// <summary> /// Initialize a GraphOneDriveStorageFile /// </summary> /// <param name="oneDriveItem">A OneDrive item</param> /// <returns>New instance of GraphOneDriveStorageFile</returns> internal OneDriveStorageFile InitializeOneDriveStorageFile(DriveItem oneDriveItem) { IBaseRequestBuilder requestBuilder = GetDriveRequestBuilderFromDriveId(oneDriveItem.ParentReference.DriveId).Items[oneDriveItem.Id]; return(new OneDriveStorageFile(Provider, requestBuilder, oneDriveItem)); }
public static IObservable <Entity[]> ListAllItems(this IBaseRequestBuilder builder, Action <ITokenStore> saveToken = null, ITokenStore tokenStore = null) => builder.ListAllItems <Entity>(tokenStore, saveToken);
private void ClearRequestBuilders() { MessagesRequestBuilder = null; }
/// <summary> /// Initializes a new instance of the <see cref="GraphOneDriveStorageFile"/> class. /// <para>Permissions : Have full access to user files and files shared with user</para> /// </summary> /// <param name="graphProvider">Instance of Graph Client class</param> /// <param name="requestBuilder">Http request builder.</param> /// <param name="oneDriveItem">OneDrive's item</param> public GraphOneDriveStorageFile(IBaseClient graphProvider, IBaseRequestBuilder requestBuilder, DriveItem oneDriveItem) : base(graphProvider, requestBuilder, oneDriveItem) { ParseFileType(oneDriveItem.Name); }
/// <summary> /// Initializes a new instance of the <see cref="OneDriveStorageFolder"/> class. /// <para>Permissions : Have full access to user files and files shared with user</para> /// </summary> /// <param name="oneDriveProvider">Instance of OneDriveClient class</param> /// <param name="requestBuilder">Http request builder.</param> /// <param name="oneDriveItem">OneDrive's item</param> public OneDriveStorageFolder(IBaseClient oneDriveProvider, IBaseRequestBuilder requestBuilder, DriveItem oneDriveItem) : base(oneDriveProvider, requestBuilder, oneDriveItem) { }
/// <summary> /// Initialize a GraphOneDriveStorageFile /// </summary> /// <param name="oneDriveItem">A OneDrive item</param> /// <returns>New instance of GraphOneDriveStorageFile</returns> protected IOneDriveStorageFile InitializeOneDriveStorageFile(DriveItem oneDriveItem) { IBaseRequestBuilder requestBuilder = (IBaseRequestBuilder)((IGraphServiceClient)Provider).Drive.Items[oneDriveItem.Id]; return(new GraphOneDriveStorageFile(Provider, requestBuilder, oneDriveItem)); }
/// <summary> /// Returns the Path to use for the Resource property of Subscription object when creating a new subscription /// </summary> /// <param name="requestBuilder">Current request builder</param> /// <returns>URL to use for the Resource property of Subscription object when creating a new subscription</returns> public static string GetResourceSubscriptionPath(this IBaseRequestBuilder requestBuilder) { var pathAndQuery = new Uri(requestBuilder.RequestUrl).PathAndQuery; return(pathAndQuery.Substring(pathAndQuery.IndexOf('/', 1))); //skips first / to ignore the version }
/// <summary> /// Initializes a new instance of the <see cref="OneDriveStorageFolder"/> class. /// <para>Permissions : Have full access to user files and files shared with user</para> /// </summary> /// <param name="oneDriveProvider">Instance of Graph Client class</param> /// <param name="requestBuilder">Http request builder.</param> /// <param name="oneDriveItem">OneDrive's item</param> public OneDriveStorageFolder(IBaseClient oneDriveProvider, IBaseRequestBuilder requestBuilder, DriveItem oneDriveItem) : base(oneDriveProvider, requestBuilder, oneDriveItem) { StorageFolderPlatformService = OneDriveService.ServicePlatformInitializer.CreateOneDriveStorageFolderPlatformInstance(OneDriveService.Instance, this); }
public static IUserRequestBuilder Me(this IBaseRequestBuilder builder) => builder.Client.Me();