private void OnCmdSuchen() { GuidHandler g = new GuidHandler(); RepositoryPath = ConfigurationManager.AppSettings["RepositoryDir"]; file = new FileHandler(RepositoryPath, g); FilteredMetadataItems = file.GetDocuments(_selectedTypItem, _suchbegriff); }
protected RestRequest AddPlexHeaders(RestRequest request) { request.AddHeader("X-Plex-Platform", "Windows"); request.AddHeader("X-Plex-Platform-Version", "7"); request.AddHeader("X-Plex-Provides", "player"); request.AddHeader("X-Plex-Client-Identifier", GuidHandler.GetGlobalGuid().ToString()); request.AddHeader("X-Plex-Product", "PlexWMC"); request.AddHeader("X-Plex-Version", "0"); return(request); }
private void OnCmdDurchsuchen() { GuidHandler g = new GuidHandler(); file = new FileHandler(RepositoryPath, g); var openFileDialog = new OpenFileDialog(); var result = openFileDialog.ShowDialog(); if (result.GetValueOrDefault()) { FilePath = openFileDialog.FileName; FileName = openFileDialog.SafeFileName; Bezeichnung = Path.GetFileNameWithoutExtension(FileName); } }
public void Can_Process_Guid() { // Arrange var sut = new GuidHandler(); var instance = Guid.Empty; var request = TestHelpers.CreateCustomTypeHandlerRequest(instance); var typeHandlers = Enumerable.Empty <ICustomTypeHandler>(); var typeNameFormatters = new[] { new DefaultTypeNameFormatter() }; var callback = TestHelpers.CreateCallback(typeHandlers, typeNameFormatters); // Act var actual = sut.Process(request, callback); var code = callback.Builder.ToString(); // Assert actual.Should().BeTrue(); code.Should().Be(@"new System.Guid(""00000000-0000-0000-0000-000000000000"")"); }
public static QueueResult NewQueue(PlexObject content, MyPlex.Server server) { //return object var q = new QueueResult(); try { //connection details for the server var ip = server.address; var port = server.port; const string protocol = @"http"; //Constants const string type = @"VIDEO"; const int shuffle = 0; const int repeat = 0; const int continuous = 0; const int own = 1; //Dynamic var uri = $"server://{server.machineIdentifier}/com.plexapp.plugins.library{content.ApiUri}"; //assemble URLs var baseUri = $"{protocol}://{ip}:{port}"; const string resource = @"playQueues"; //HTTP request client using (var httpClient = new HttpClient()) { //new HTTP post request using (var request = new HttpRequestMessage(new HttpMethod("POST"), $"{baseUri}/{resource}?type={type}&shuffle={shuffle}" + $"&repeat={repeat}&continuous={continuous}" + $"&own={own}&uri={uri}")) { //add Plex client ID (unique GUID) request.Headers.TryAddWithoutValidation("X-Plex-Client-Identifier", GuidHandler.GetGlobalGuid().ToString()); //Plex authentication token request.Headers.TryAddWithoutValidation("X-Plex-Token", server.accessToken); //send the request and store the response var response = httpClient.SendAsync(request).Result; //did we succeed? if (response.IsSuccessStatusCode) { //is the content valid? if (response.Content != null) { //get the XML response string var r = response.Content.ReadAsStringAsync().GetAwaiter().GetResult(); //XML class processor var deserialiser = new XmlSerializer(typeof(MediaContainer)); //XML string reader var stringReader = new StringReader(r); //deserialised MediaContainer var result = (MediaContainer)deserialiser.Deserialize(stringReader); //close streams stringReader.Close(); //setup QueueResult variables q.QueueId = result.playQueueID.ToString(); q.QueueSuccess = true; q.QueueObject = result; q.QueueUri = $"/playQueues/{result.playQueueID}?own=1&window=200"; //UIMessages.Info(d.playQueueID); //UIMessages.Info(q.QueueId); } } } } } catch (Exception ex) { //log the error LoggingHelpers.RecordException(ex.Message, @"QueueAddError"); //alert the user UIMessages.Error($"Error obtaining a new PlayQueue:\n\n{ex}"); } //return QueueResult return(q); }