public StatsViewModel() { _dialogService = new DialogService(); oneDriveService = new OneDriveService(); Setup(); }
public AuthenticationPage() { InitializeComponent(); _service = ((App)Application.Current).ServiceInstance; Loaded += (s, e) => { var uri = _service.GetStartUri(); Web.Navigate(uri); }; Web.NavigationCompleted += (s, e) => { if (_service.CheckRedirectUrl(e.Uri.AbsoluteUri)) { _service.ContinueGetTokens(e.Uri); } }; Web.NavigationFailed += (s, e) => { _service.ContinueGetTokens(null); }; }
/// <summary> /// Initializes a new instance of the <see cref="OneDriveStorageFilePlatform"/> class. /// </summary> /// <param name="service">Instance of OneDriveService</param> /// <param name="oneDriveStorageFile">Instance of OneDriveStorageFile</param> public OneDriveStorageFilePlatform( OneDriveService service, OneDriveStorageFile oneDriveStorageFile) { _service = service; _oneDriveStorageFile = oneDriveStorageFile; }
internal async void GetSharedDrives_WithValidShares_MustResultAsSpected() { var drive = new DTOs.SharedDrive { remoteItem = new DTOs.SharedDriveDetails { id = "driveID", name = "driveName", folder = new DTOs.DirectoryDetails { }, shared = new DTOs.SharedDriveDetailsShared { owner = new DTOs.SharedDriveDetailsSharedOwner { user = new DTOs.Profile { id = "userID" } } } } }; var param = new DTOs.SharedDriveSearch { value = new DTOs.SharedDrive[] { drive } }; var client = ClientBuilder.Create().With("me/drive/sharedWithMe", param).Build(); var service = new OneDriveService(client); var value = await service.GetSharedDrives(); Assert.NotNull(value); Assert.NotEmpty(value); Assert.Equal("driveID", value[0].ID); Assert.Equal("driveName", value[0].Name); Assert.Equal("/", value[0].Path); }
internal async void SearchFiles_WithSingleFileAndNoChildFolder_MustSingleArray() { var fileData = new DTOs.FileSearch { value = new DTOs.File[] { new DTOs.File { file = new DTOs.FileDetails { }, id = "fileID", name = "fileName.txt", parentReference = new DTOs.DirectoryParent { id = "parentID", path = "/parent/folderName" } } } }; var directoryData = new DTOs.DirectorySearch { value = new DTOs.Directory[] { } }; var client = ClientBuilder.Create() .With("$select=id,name,createdDateTime,size,@microsoft.graph.downloadUrl,file,parentReference&$top=1000", fileData) .With("$select=id,name,folder,parentReference&$top=1000", directoryData) .Build(); var service = new OneDriveService(client); var directory = new DirectoryVM { ID = "driveID!folderID" }; var value = await service.SearchFiles(directory, "*.txt"); Assert.NotNull(value); Assert.Single(value); Assert.Equal("fileID", value[0].ID); }
/// <summary> /// Initializes a new instance of the <see cref="OneDriveFileSystem"/> class. /// </summary> /// <param name="service">The OneDrive service instance to use for communication with the OneDrive API</param> /// <param name="supportFactory">A support factory instance to create some classes in a platform-agnostic way</param> /// <param name="drive">The drive to use</param> /// <param name="rootFolder">The root folder to use</param> public OneDriveFileSystem([NotNull] OneDriveService service, [NotNull] OneDriveSupportFactory supportFactory, [NotNull] Drive drive, [NotNull] Item rootFolder) { Service = service; _supportFactory = supportFactory; Drive = drive; RootFolderItem = rootFolder; Root = new OneDriveDirectoryEntry(this, rootFolder, true); }
public App() { InitializeComponent(); ServiceInstance = new OneDriveService(_ONEDRIVE_APP_ID); MainPage = new NavigationPage(new MainPage()); }
public StatsView() { InitializeComponent(); SystemNavigationManager.GetForCurrentView().AppViewBackButtonVisibility = AppViewBackButtonVisibility.Visible; service = new OneDriveService(); }
internal async void SearchFiles_WithValidFilesAndFolder_MustResultAsSpected(string searchPattern, int searchLimit) { var fileData = new DTOs.FileSearch { value = new DTOs.File[] { new DTOs.File { file = new DTOs.FileDetails { }, id = "file1ID", name = "file1Name.txt", parentReference = new DTOs.DirectoryParent { id = "parentID", path = "/parent/folderName" } }, new DTOs.File { file = new DTOs.FileDetails { }, id = "file2ID", name = "file2Name.zip", parentReference = new DTOs.DirectoryParent { id = "parentID", path = "/parent/folderName" } }, new DTOs.File { file = new DTOs.FileDetails { }, id = "file3ID", name = "file3Name.txt", parentReference = new DTOs.DirectoryParent { id = "parentID", path = "/parent/folderName" } } } }; var directoryData = new DTOs.DirectorySearch { value = new DTOs.Directory[] { new DTOs.Directory { folder = new DTOs.DirectoryDetails { }, id = "driveID!folderID", name = "folderName", parentReference = new DTOs.DirectoryParent { path = "/rootName" } } } }; var client = ClientBuilder.Create() .With("$select=id,name,createdDateTime,size,@microsoft.graph.downloadUrl,file,parentReference&$top=1000", fileData) .With("$select=id,name,folder,parentReference&$top=1000", directoryData) .Build(); var service = new OneDriveService(client); var directory = new DirectoryVM { ID = "driveID!folderID" }; var value = await service.SearchFiles(directory, searchPattern, searchLimit); Assert.NotNull(value); Assert.Equal(searchLimit, value.Length); }
internal async void GetDrives_WithoutConnection_MustResultNull() { var client = ClientBuilder.Create().WithoutConnection().Build(); var service = new OneDriveService(client); var value = await service.GetDrives(); Assert.Null(value); }
/// <inheritdoc/> public async Task <IDriveItem> UploadFileInTeamDrive(Func <Task <string> > tokenProvider, MemoryStream stream, string teamId, string filePath) { GraphServiceClient client = CreateGraphClient(tokenProvider); var res = await OneDriveService.UploadToChannelFolder(client, teamId, stream, filePath); var item = MapResult(res); return(item); }
internal async void GetSharedDrives_WithNullShares_MustResultNull(DTOs.SharedDriveSearch param) { var client = ClientBuilder.Create().With("me/drive/sharedWithMe", param).Build(); var service = new OneDriveService(client); var value = await service.GetSharedDrives(); Assert.Null(value); }
public void GetPath_WithValidArguments_MustResultAsSpected(string path, string expected) { var client = ClientBuilder.Create().Build(); var service = new OneDriveService(client: client); var value = service.GetPath(path); Assert.Equal(expected, value); }
public StatsViewModel(DialogService dialogService) { _dialogService = dialogService; _gameRepo = new GameRepository(); _playerRepo = new PlayerRepository(); _achievementRepo = new AchievementRepository(); _oneDriveService = new OneDriveService(); Setup(); }
public async void GetProfilePicture_WithoutConnection_MustResultNull() { var client = ClientBuilder.Create().WithoutConnection().Build(); var service = new OneDriveService(client); var value = await service.GetProfilePicture(); Assert.Null(value); }
public async void ConnectAsync_WithDefaultClient_MustResultFalse() { var client = ClientBuilder.Create().Build(); var service = new OneDriveService(client: client); var value = await service.ConnectAsync(); Assert.False(value); }
public async Task <ActionResult> ShowDocument(int id = -1, string title = "") { var db = new OneDriveDbContext(); File file; if (id != -1) { //権限がない if (User.IsInRole(nameof(Role.アップロード))) { return(View("Error")); } file = db.Files.First(info => info.DocumentId == id); } else { if (title == "") { var manager = HttpContext.GetOwinContext().GetUserManager <ApplicationUserManager>(); var name = manager.FindByName(User.Identity.Name).Title; //該当する資料が存在しない if (!db.Files.Any(info => info.DocumentName == name)) { return(View("Error")); } file = db.Files.First(info => info.DocumentName == name); } else { //権限がない if (User.IsInRole(nameof(Role.アップロード))) { return(View("Error")); } var manager = HttpContext.GetOwinContext().GetUserManager <ApplicationUserManager>(); //該当する資料が存在しない if (!db.Files.Any(info => info.DocumentName == title)) { return(View("Error")); } file = db.Files.First(info => info.DocumentName == title); } } file.DownloadCount++; db.SaveChanges(); var shareInfo = await OneDriveService.CreateShareLink(file.MicrosoftAccountNum, file.OneDriveFileId); _tasks.Add(DeleteShareLinkTask(file.MicrosoftAccountNum, file.OneDriveFileId, shareInfo.PermissionId)); _tasks = _tasks.Where(x => !x.IsCompleted || !x.IsCanceled || !x.IsFaulted).ToList(); //完了済みのものを取り除く return(Redirect(shareInfo.Url)); }
/// <summary> /// Initialize the O365 binding extension /// </summary> /// <param name="context">Context containing info relevant to this extension</param> public void Initialize(ExtensionConfigContext context) { _webhookTriggerProvider = new WebhookTriggerBindingProvider(); _notificationUrl = context.GetWebhookHandler(); var graphWebhookConverter = new GraphWebhookSubscriptionConverter(_graphServiceClientManager, _options, _subscriptionStore); // Webhooks var webhookSubscriptionRule = context.AddBindingRule <GraphWebhookSubscriptionAttribute>(); webhookSubscriptionRule.BindToInput <Subscription[]>(graphWebhookConverter); webhookSubscriptionRule.BindToInput <OpenType[]>(typeof(GenericGraphWebhookSubscriptionConverter <>), _graphServiceClientManager, _options, _subscriptionStore); webhookSubscriptionRule.BindToInput <string[]>(graphWebhookConverter); webhookSubscriptionRule.BindToInput <JArray>(graphWebhookConverter); webhookSubscriptionRule.BindToCollector <string>(CreateCollector); context.AddBindingRule <GraphWebhookTriggerAttribute>().BindToTrigger(_webhookTriggerProvider); // OneDrive var oneDriveService = new OneDriveService(_graphServiceClientManager); var OneDriveRule = context.AddBindingRule <OneDriveAttribute>(); var oneDriveConverter = new OneDriveConverter(oneDriveService); // OneDrive inputs OneDriveRule.BindToInput <byte[]>(oneDriveConverter); OneDriveRule.BindToInput <string>(oneDriveConverter); OneDriveRule.BindToInput <Stream>(oneDriveConverter); OneDriveRule.BindToInput <DriveItem>(oneDriveConverter); //OneDriveoutputs OneDriveRule.BindToCollector <byte[]>(oneDriveConverter); // Excel var excelService = new ExcelService(_graphServiceClientManager); var ExcelRule = context.AddBindingRule <ExcelAttribute>(); var excelConverter = new ExcelConverter(excelService); // Excel Outputs ExcelRule.AddConverter <object[][], string>(ExcelService.CreateRows); ExcelRule.AddConverter <JObject, string>(excelConverter); ExcelRule.AddOpenConverter <OpenType, string>(typeof(ExcelGenericsConverter <>), excelService); // used to append/update arrays of POCOs ExcelRule.BindToCollector <string>(excelConverter); // Excel Inputs ExcelRule.BindToInput <string[][]>(excelConverter); ExcelRule.BindToInput <WorkbookTable>(excelConverter); ExcelRule.BindToInput <OpenType>(typeof(ExcelGenericsConverter <>), excelService); // Outlook var outlookService = new OutlookService(_graphServiceClientManager); var OutlookRule = context.AddBindingRule <OutlookAttribute>(); var outlookConverter = new OutlookConverter(outlookService); // Outlook Outputs OutlookRule.AddConverter <JObject, Message>(outlookConverter); OutlookRule.AddOpenConverter <OpenType, Message>(typeof(OutlookGenericsConverter <>), outlookService); OutlookRule.AddConverter <string, Message>(outlookConverter); OutlookRule.BindToCollector <Message>(outlookConverter); }
public void Constructor_WithValidArgument_MustSetProperty() { var client = ClientBuilder.Create().Build(); var service = new OneDriveService(client: client); var expected = client; var value = service.Client; Assert.Same(expected, value); }
public void GetIDs_WithInvalidArguments_MustThrowException(string itemID) { var client = ClientBuilder.Create().Build(); var service = new OneDriveService(client: client); var expected = "The directory ID for the onedrive client is invalid"; var value = Assert.Throws <ArgumentException>(() => service.GetIDs(itemID)); Assert.Equal(expected, value.Message); }
public async void DisconnectAsync_WithDefaultClient_MustResultFalse() { var client = ClientBuilder.Create().Build(); var service = new OneDriveService(client: client); var expected = false; await service.DisconnectAsync(); Assert.False(expected); }
internal async void GetSharedDrives_WithException_MustResultNull() { var exception = new Exception("Some Dummy Exception"); var client = ClientBuilder.Create().With("me/drive/sharedWithMe", exception).Build(); var service = new OneDriveService(client); var value = await service.GetSharedDrives(); Assert.Null(value); }
internal void GetDetails_WithValidArgument_MustResultSpectedValue(DTOs.File param) { var client = ClientBuilder.Create().Build(); var service = new OneDriveService(client); var value = service.GetDetails(param); Assert.NotNull(value); Assert.Equal("id", value.ID); }
internal async void Download_WithInvalidArgument_MustThrowException(string fileID) { var client = ClientBuilder.Create().Build(); var exceptionMessage = $"Error while downloading file [{fileID}] with oneDrive service"; var service = new OneDriveService(client); var value = await Assert.ThrowsAsync <Exception>(async() => await service.Download(fileID)); Assert.NotNull(value); Assert.Equal(exceptionMessage, value.Message); }
public AuthPage() { InitializeComponent(); _service = ((App)Application.Current).ServiceInstance; // 認証ページを表示 this.webView.Source = _service.GetStartUri(); webView.Navigated += WebView_Navigated; }
public async void GetProfilePicture_WithException_MustThrowException() { var exception = new Exception("Some Dummy Exception"); var client = ClientBuilder.Create().With("me/photo/$value", exception).Build(); var service = new OneDriveService(client); var value = await Assert.ThrowsAsync <Exception>(async() => await service.GetProfilePicture()); Assert.NotNull(value); Assert.Equal(exception.Message, value.Message); }
internal async void GetDrives_WithException_MustThrowException() { var exception = new Exception("Some Dummy Exception"); var client = ClientBuilder.Create().With("me?$select=id,displayName,userPrincipalName", exception).Build(); var service = new OneDriveService(client); var value = await Assert.ThrowsAsync <Exception>(async() => await service.GetDrives()); Assert.NotNull(value); Assert.Equal(exception.Message, value.Message); }
public void GetIDs_WithValidRootArguments_MustResultSpectedValue() { var client = ClientBuilder.Create().Build(); var service = new OneDriveService(client: client); var expectedDrive = "drive"; var expectedFile = "root"; var value = service.GetIDs($"{expectedDrive}!{expectedFile}"); Assert.Equal(expectedDrive, value.DriveID); Assert.Equal(expectedFile, value.ID); }
internal async void GetDetails_WithException_MustThrowException() { var fileID = "driveID!fileID"; var exception = new Exception($"Error while loading details for file [{fileID}] with oneDrive service"); var client = ClientBuilder.Create().With("", exception).Build(); var service = new OneDriveService(client); var value = await Assert.ThrowsAsync <Exception>(async() => await service.GetDetails(fileID)); Assert.NotNull(value); Assert.Equal(exception.Message, value.Message); }
internal async void SearchFiles_WithZeroLimit_MustResultAndEmptyArray() { var client = ClientBuilder.Create().Build(); var service = new OneDriveService(client); var directory = new DirectoryVM { }; var value = await service.SearchFiles(directory, "", 0); Assert.NotNull(value); Assert.Empty(value); }
internal async void Download_WithBadResponse_MustThrowException() { var fileID = "driveID!fileID"; var exceptionMessage = $"Error while downloading file [{fileID}] with oneDrive service"; var client = ClientBuilder.Create().With("", new HttpResponseMessage(System.Net.HttpStatusCode.BadRequest)).Build(); var service = new OneDriveService(client); var value = await Assert.ThrowsAsync <Exception>(async() => await service.Download(fileID)); Assert.NotNull(value); Assert.Equal(exceptionMessage, value.Message); }