split files into separate classes

pull/702/head
Luke Pulverenti 11 years ago
parent e653b41000
commit dce9093ba1

@ -95,11 +95,12 @@
<Compile Include="ScheduledTasks\Tasks\DeleteCacheFileTask.cs" /> <Compile Include="ScheduledTasks\Tasks\DeleteCacheFileTask.cs" />
<Compile Include="ScheduledTasks\Tasks\DeleteLogFileTask.cs" /> <Compile Include="ScheduledTasks\Tasks\DeleteLogFileTask.cs" />
<Compile Include="ScheduledTasks\Tasks\PluginUpdateTask.cs" /> <Compile Include="ScheduledTasks\Tasks\PluginUpdateTask.cs" />
<Compile Include="ScheduledTasks\Tasks\ReloadLoggerTask.cs" /> <Compile Include="ScheduledTasks\Tasks\ReloadLoggerFileTask.cs" />
<Compile Include="ScheduledTasks\Tasks\SystemUpdateTask.cs" /> <Compile Include="ScheduledTasks\Tasks\SystemUpdateTask.cs" />
<Compile Include="Security\MBLicenseFile.cs" /> <Compile Include="Security\MBLicenseFile.cs" />
<Compile Include="Security\MBRegistration.cs" /> <Compile Include="Security\MBRegistration.cs" />
<Compile Include="Security\PluginSecurityManager.cs" /> <Compile Include="Security\PluginSecurityManager.cs" />
<Compile Include="Security\RegRecord.cs" />
<Compile Include="Serialization\JsonSerializer.cs" /> <Compile Include="Serialization\JsonSerializer.cs" />
<Compile Include="Serialization\XmlSerializer.cs" /> <Compile Include="Serialization\XmlSerializer.cs" />
<Compile Include="Updates\InstallationManager.cs" /> <Compile Include="Updates\InstallationManager.cs" />

@ -94,11 +94,4 @@ namespace MediaBrowser.Common.Implementations.Security
return new MBRegistrationRecord { IsRegistered = reg.registered, ExpirationDate = reg.expDate, RegChecked = true }; return new MBRegistrationRecord { IsRegistered = reg.registered, ExpirationDate = reg.expDate, RegChecked = true };
} }
} }
class RegRecord
{
public string featId { get; set; }
public bool registered { get; set; }
public DateTime expDate { get; set; }
}
} }

@ -0,0 +1,11 @@
using System;
namespace MediaBrowser.Common.Implementations.Security
{
class RegRecord
{
public string featId { get; set; }
public bool registered { get; set; }
public DateTime expDate { get; set; }
}
}

@ -152,15 +152,4 @@ namespace MediaBrowser.Common
/// <returns>System.Object.</returns> /// <returns>System.Object.</returns>
object CreateInstance(Type type); object CreateInstance(Type type);
} }
public interface IDependencyContainer
{
void RegisterSingleInstance<T>(T obj, bool manageLifetime = true)
where T : class;
void RegisterSingleInstance<T>(Func<T> func)
where T : class;
void Register(Type typeInterface, Type typeImplementation);
}
} }

@ -0,0 +1,15 @@
using System;
namespace MediaBrowser.Common
{
public interface IDependencyContainer
{
void RegisterSingleInstance<T>(T obj, bool manageLifetime = true)
where T : class;
void RegisterSingleInstance<T>(Func<T> func)
where T : class;
void Register(Type typeInterface, Type typeImplementation);
}
}

@ -60,6 +60,7 @@
<Compile Include="Events\EventHelper.cs" /> <Compile Include="Events\EventHelper.cs" />
<Compile Include="Extensions\BaseExtensions.cs" /> <Compile Include="Extensions\BaseExtensions.cs" />
<Compile Include="Extensions\ResourceNotFoundException.cs" /> <Compile Include="Extensions\ResourceNotFoundException.cs" />
<Compile Include="IDependencyContainer.cs" />
<Compile Include="IO\FileSystemRepository.cs" /> <Compile Include="IO\FileSystemRepository.cs" />
<Compile Include="IO\IFileSystem.cs" /> <Compile Include="IO\IFileSystem.cs" />
<Compile Include="IO\ProgressStream.cs" /> <Compile Include="IO\ProgressStream.cs" />
@ -78,9 +79,12 @@
<Compile Include="Net\IWebSocketServer.cs" /> <Compile Include="Net\IWebSocketServer.cs" />
<Compile Include="Net\MimeTypes.cs" /> <Compile Include="Net\MimeTypes.cs" />
<Compile Include="Net\WebSocketConnectEventArgs.cs" /> <Compile Include="Net\WebSocketConnectEventArgs.cs" />
<Compile Include="Net\WebSocketMessageInfo.cs" />
<Compile Include="Plugins\IDependencyModule.cs" /> <Compile Include="Plugins\IDependencyModule.cs" />
<Compile Include="Plugins\IPlugin.cs" /> <Compile Include="Plugins\IPlugin.cs" />
<Compile Include="Progress\ActionableProgress.cs" /> <Compile Include="Progress\ActionableProgress.cs" />
<Compile Include="ScheduledTasks\IConfigurableScheduledTask.cs" />
<Compile Include="ScheduledTasks\IHasKey.cs" />
<Compile Include="ScheduledTasks\IScheduledTask.cs" /> <Compile Include="ScheduledTasks\IScheduledTask.cs" />
<Compile Include="ScheduledTasks\IScheduledTaskWorker.cs" /> <Compile Include="ScheduledTasks\IScheduledTaskWorker.cs" />
<Compile Include="ScheduledTasks\ITaskManager.cs" /> <Compile Include="ScheduledTasks\ITaskManager.cs" />
@ -98,6 +102,7 @@
<Compile Include="Security\ISecurityManager.cs" /> <Compile Include="Security\ISecurityManager.cs" />
<Compile Include="Updates\IInstallationManager.cs" /> <Compile Include="Updates\IInstallationManager.cs" />
<Compile Include="Updates\InstallationEventArgs.cs" /> <Compile Include="Updates\InstallationEventArgs.cs" />
<Compile Include="Updates\InstallationFailedEventArgs.cs" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<None Include="app.config" /> <None Include="app.config" />

@ -65,16 +65,4 @@ namespace MediaBrowser.Common.Net
/// <exception cref="System.ArgumentNullException">buffer</exception> /// <exception cref="System.ArgumentNullException">buffer</exception>
Task SendAsync(byte[] buffer, WebSocketMessageType type, CancellationToken cancellationToken); Task SendAsync(byte[] buffer, WebSocketMessageType type, CancellationToken cancellationToken);
} }
/// <summary>
/// Class WebSocketMessageInfo
/// </summary>
public class WebSocketMessageInfo : WebSocketMessage<string>
{
/// <summary>
/// Gets or sets the connection.
/// </summary>
/// <value>The connection.</value>
public IWebSocketConnection Connection { get; set; }
}
} }

@ -0,0 +1,16 @@
using MediaBrowser.Model.Net;
namespace MediaBrowser.Common.Net
{
/// <summary>
/// Class WebSocketMessageInfo
/// </summary>
public class WebSocketMessageInfo : WebSocketMessage<string>
{
/// <summary>
/// Gets or sets the connection.
/// </summary>
/// <value>The connection.</value>
public IWebSocketConnection Connection { get; set; }
}
}

@ -0,0 +1,16 @@
namespace MediaBrowser.Common.ScheduledTasks
{
public interface IConfigurableScheduledTask
{
/// <summary>
/// Gets a value indicating whether this instance is hidden.
/// </summary>
/// <value><c>true</c> if this instance is hidden; otherwise, <c>false</c>.</value>
bool IsHidden { get; }
/// <summary>
/// Gets a value indicating whether this instance is enabled.
/// </summary>
/// <value><c>true</c> if this instance is enabled; otherwise, <c>false</c>.</value>
bool IsEnabled { get; }
}
}

@ -0,0 +1,7 @@
namespace MediaBrowser.Common.ScheduledTasks
{
public interface IHasKey
{
string Key { get; }
}
}

@ -42,23 +42,4 @@ namespace MediaBrowser.Common.ScheduledTasks
/// <returns>IEnumerable{BaseTaskTrigger}.</returns> /// <returns>IEnumerable{BaseTaskTrigger}.</returns>
IEnumerable<ITaskTrigger> GetDefaultTriggers(); IEnumerable<ITaskTrigger> GetDefaultTriggers();
} }
public interface IConfigurableScheduledTask
{
/// <summary>
/// Gets a value indicating whether this instance is hidden.
/// </summary>
/// <value><c>true</c> if this instance is hidden; otherwise, <c>false</c>.</value>
bool IsHidden { get; }
/// <summary>
/// Gets a value indicating whether this instance is enabled.
/// </summary>
/// <value><c>true</c> if this instance is enabled; otherwise, <c>false</c>.</value>
bool IsEnabled { get; }
}
public interface IHasKey
{
string Key { get; }
}
} }

@ -1,5 +1,4 @@
using MediaBrowser.Model.Updates; using MediaBrowser.Model.Updates;
using System;
namespace MediaBrowser.Common.Updates namespace MediaBrowser.Common.Updates
{ {
@ -9,9 +8,4 @@ namespace MediaBrowser.Common.Updates
public PackageVersionInfo PackageVersionInfo { get; set; } public PackageVersionInfo PackageVersionInfo { get; set; }
} }
public class InstallationFailedEventArgs : InstallationEventArgs
{
public Exception Exception { get; set; }
}
} }

@ -0,0 +1,9 @@
using System;
namespace MediaBrowser.Common.Updates
{
public class InstallationFailedEventArgs : InstallationEventArgs
{
public Exception Exception { get; set; }
}
}

@ -59,18 +59,22 @@
<Compile Include="PlayTo\Device.cs"> <Compile Include="PlayTo\Device.cs">
<SubType>Code</SubType> <SubType>Code</SubType>
</Compile> </Compile>
<Compile Include="PlayTo\DeviceEventArgs.cs" /> <Compile Include="PlayTo\PlaybackStartEventArgs.cs" />
<Compile Include="PlayTo\DeviceInfo.cs" /> <Compile Include="PlayTo\DeviceInfo.cs" />
<Compile Include="Common\DeviceService.cs" /> <Compile Include="Common\DeviceService.cs" />
<Compile Include="Didl\DidlBuilder.cs" /> <Compile Include="Didl\DidlBuilder.cs" />
<Compile Include="PlayTo\DlnaController.cs" /> <Compile Include="PlayTo\PlayToController.cs" />
<Compile Include="PlayTo\Extensions.cs" /> <Compile Include="PlayTo\Extensions.cs" />
<Compile Include="PlayTo\PlaybackProgressEventArgs.cs" />
<Compile Include="PlayTo\PlaybackStoppedEventArgs.cs" />
<Compile Include="PlayTo\PlaylistItem.cs"> <Compile Include="PlayTo\PlaylistItem.cs">
<SubType>Code</SubType> <SubType>Code</SubType>
</Compile> </Compile>
<Compile Include="PlayTo\PlaylistItemFactory.cs" /> <Compile Include="PlayTo\PlaylistItemFactory.cs" />
<Compile Include="PlayTo\PlayToManager.cs" /> <Compile Include="PlayTo\PlayToManager.cs" />
<Compile Include="Common\ServiceAction.cs" /> <Compile Include="Common\ServiceAction.cs" />
<Compile Include="PlayTo\TRANSPORTSTATE.cs" />
<Compile Include="PlayTo\uParserObject.cs" />
<Compile Include="Profiles\Foobar2000Profile.cs" /> <Compile Include="Profiles\Foobar2000Profile.cs" />
<Compile Include="Profiles\Windows81Profile.cs" /> <Compile Include="Profiles\Windows81Profile.cs" />
<Compile Include="Profiles\WindowsMediaCenterProfile.cs" /> <Compile Include="Profiles\WindowsMediaCenterProfile.cs" />

@ -1,28 +0,0 @@
using System;
namespace MediaBrowser.Dlna.PlayTo
{
public class PlaybackStartEventArgs : EventArgs
{
public uBaseObject MediaInfo { get; set; }
}
public class PlaybackProgressEventArgs : EventArgs
{
public uBaseObject MediaInfo { get; set; }
}
public class PlaybackStoppedEventArgs : EventArgs
{
public uBaseObject MediaInfo { get; set; }
}
public enum TRANSPORTSTATE
{
STOPPED,
PLAYING,
TRANSITIONING,
PAUSED_PLAYBACK,
PAUSED
}
}

@ -0,0 +1,9 @@
using System;
namespace MediaBrowser.Dlna.PlayTo
{
public class PlaybackProgressEventArgs : EventArgs
{
public uBaseObject MediaInfo { get; set; }
}
}

@ -0,0 +1,9 @@
using System;
namespace MediaBrowser.Dlna.PlayTo
{
public class PlaybackStartEventArgs : EventArgs
{
public uBaseObject MediaInfo { get; set; }
}
}

@ -0,0 +1,9 @@
using System;
namespace MediaBrowser.Dlna.PlayTo
{
public class PlaybackStoppedEventArgs : EventArgs
{
public uBaseObject MediaInfo { get; set; }
}
}

@ -0,0 +1,11 @@
namespace MediaBrowser.Dlna.PlayTo
{
public enum TRANSPORTSTATE
{
STOPPED,
PLAYING,
TRANSITIONING,
PAUSED_PLAYBACK,
PAUSED
}
}

@ -44,9 +44,4 @@ namespace MediaBrowser.Dlna.PlayTo
return UpnpContainer.Create(uItem.Element); return UpnpContainer.Create(uItem.Element);
} }
} }
public class uParserObject
{
public XElement Element { get; set; }
}
} }

@ -0,0 +1,9 @@
using System.Xml.Linq;
namespace MediaBrowser.Dlna.PlayTo
{
public class uParserObject
{
public XElement Element { get; set; }
}
}

@ -19,8 +19,8 @@ namespace MediaBrowser.Dlna.Profiles
ModelDescription = "Media Browser"; ModelDescription = "Media Browser";
ModelName = "Media Browser"; ModelName = "Media Browser";
ModelNumber = "Media Browser"; ModelNumber = "Media Browser";
ModelUrl = "http://mediabrowser3.com/"; ModelUrl = "http://mediabrowser.tv/";
ManufacturerUrl = "http://mediabrowser3.com/"; ManufacturerUrl = "http://mediabrowser.tv/";
AlbumArtPn = "JPEG_SM"; AlbumArtPn = "JPEG_SM";

@ -3,11 +3,11 @@
<Name>Generic Device</Name> <Name>Generic Device</Name>
<FriendlyName>Media Browser</FriendlyName> <FriendlyName>Media Browser</FriendlyName>
<Manufacturer>Media Browser</Manufacturer> <Manufacturer>Media Browser</Manufacturer>
<ManufacturerUrl>http://mediabrowser3.com/</ManufacturerUrl> <ManufacturerUrl>http://mediabrowser.tv/</ManufacturerUrl>
<ModelName>Media Browser</ModelName> <ModelName>Media Browser</ModelName>
<ModelDescription>Media Browser</ModelDescription> <ModelDescription>Media Browser</ModelDescription>
<ModelNumber>Media Browser</ModelNumber> <ModelNumber>Media Browser</ModelNumber>
<ModelUrl>http://mediabrowser3.com/</ModelUrl> <ModelUrl>http://mediabrowser.tv/</ModelUrl>
<IgnoreTranscodeByteRangeRequests>false</IgnoreTranscodeByteRangeRequests> <IgnoreTranscodeByteRangeRequests>false</IgnoreTranscodeByteRangeRequests>
<EnableAlbumArtInDidl>false</EnableAlbumArtInDidl> <EnableAlbumArtInDidl>false</EnableAlbumArtInDidl>
<SupportedMediaTypes>Audio,Photo,Video</SupportedMediaTypes> <SupportedMediaTypes>Audio,Photo,Video</SupportedMediaTypes>

@ -8,11 +8,11 @@
</Identification> </Identification>
<FriendlyName>Media Browser</FriendlyName> <FriendlyName>Media Browser</FriendlyName>
<Manufacturer>Media Browser</Manufacturer> <Manufacturer>Media Browser</Manufacturer>
<ManufacturerUrl>http://mediabrowser3.com/</ManufacturerUrl> <ManufacturerUrl>http://mediabrowser.tv/</ManufacturerUrl>
<ModelName>Media Browser</ModelName> <ModelName>Media Browser</ModelName>
<ModelDescription>Media Browser</ModelDescription> <ModelDescription>Media Browser</ModelDescription>
<ModelNumber>Media Browser</ModelNumber> <ModelNumber>Media Browser</ModelNumber>
<ModelUrl>http://mediabrowser3.com/</ModelUrl> <ModelUrl>http://mediabrowser.tv/</ModelUrl>
<IgnoreTranscodeByteRangeRequests>false</IgnoreTranscodeByteRangeRequests> <IgnoreTranscodeByteRangeRequests>false</IgnoreTranscodeByteRangeRequests>
<EnableAlbumArtInDidl>false</EnableAlbumArtInDidl> <EnableAlbumArtInDidl>false</EnableAlbumArtInDidl>
<SupportedMediaTypes>Audio,Photo,Video</SupportedMediaTypes> <SupportedMediaTypes>Audio,Photo,Video</SupportedMediaTypes>

@ -9,11 +9,11 @@
</Identification> </Identification>
<FriendlyName>Media Browser</FriendlyName> <FriendlyName>Media Browser</FriendlyName>
<Manufacturer>Media Browser</Manufacturer> <Manufacturer>Media Browser</Manufacturer>
<ManufacturerUrl>http://mediabrowser3.com/</ManufacturerUrl> <ManufacturerUrl>http://mediabrowser.tv/</ManufacturerUrl>
<ModelName>Media Browser</ModelName> <ModelName>Media Browser</ModelName>
<ModelDescription>Media Browser</ModelDescription> <ModelDescription>Media Browser</ModelDescription>
<ModelNumber>Media Browser</ModelNumber> <ModelNumber>Media Browser</ModelNumber>
<ModelUrl>http://mediabrowser3.com/</ModelUrl> <ModelUrl>http://mediabrowser.tv/</ModelUrl>
<IgnoreTranscodeByteRangeRequests>false</IgnoreTranscodeByteRangeRequests> <IgnoreTranscodeByteRangeRequests>false</IgnoreTranscodeByteRangeRequests>
<EnableAlbumArtInDidl>false</EnableAlbumArtInDidl> <EnableAlbumArtInDidl>false</EnableAlbumArtInDidl>
<SupportedMediaTypes>Audio,Photo,Video</SupportedMediaTypes> <SupportedMediaTypes>Audio,Photo,Video</SupportedMediaTypes>

@ -7,11 +7,11 @@
</Identification> </Identification>
<FriendlyName>Media Browser</FriendlyName> <FriendlyName>Media Browser</FriendlyName>
<Manufacturer>Media Browser</Manufacturer> <Manufacturer>Media Browser</Manufacturer>
<ManufacturerUrl>http://mediabrowser3.com/</ManufacturerUrl> <ManufacturerUrl>http://mediabrowser.tv/</ManufacturerUrl>
<ModelName>Media Browser</ModelName> <ModelName>Media Browser</ModelName>
<ModelDescription>Media Browser</ModelDescription> <ModelDescription>Media Browser</ModelDescription>
<ModelNumber>Media Browser</ModelNumber> <ModelNumber>Media Browser</ModelNumber>
<ModelUrl>http://mediabrowser3.com/</ModelUrl> <ModelUrl>http://mediabrowser.tv/</ModelUrl>
<IgnoreTranscodeByteRangeRequests>false</IgnoreTranscodeByteRangeRequests> <IgnoreTranscodeByteRangeRequests>false</IgnoreTranscodeByteRangeRequests>
<EnableAlbumArtInDidl>false</EnableAlbumArtInDidl> <EnableAlbumArtInDidl>false</EnableAlbumArtInDidl>
<SupportedMediaTypes>Audio,Photo,Video</SupportedMediaTypes> <SupportedMediaTypes>Audio,Photo,Video</SupportedMediaTypes>

@ -10,11 +10,11 @@
</Identification> </Identification>
<FriendlyName>Media Browser</FriendlyName> <FriendlyName>Media Browser</FriendlyName>
<Manufacturer>Media Browser</Manufacturer> <Manufacturer>Media Browser</Manufacturer>
<ManufacturerUrl>http://mediabrowser3.com/</ManufacturerUrl> <ManufacturerUrl>http://mediabrowser.tv/</ManufacturerUrl>
<ModelName>Media Browser</ModelName> <ModelName>Media Browser</ModelName>
<ModelDescription>Media Browser</ModelDescription> <ModelDescription>Media Browser</ModelDescription>
<ModelNumber>Media Browser</ModelNumber> <ModelNumber>Media Browser</ModelNumber>
<ModelUrl>http://mediabrowser3.com/</ModelUrl> <ModelUrl>http://mediabrowser.tv/</ModelUrl>
<IgnoreTranscodeByteRangeRequests>false</IgnoreTranscodeByteRangeRequests> <IgnoreTranscodeByteRangeRequests>false</IgnoreTranscodeByteRangeRequests>
<EnableAlbumArtInDidl>false</EnableAlbumArtInDidl> <EnableAlbumArtInDidl>false</EnableAlbumArtInDidl>
<SupportedMediaTypes>Audio,Photo,Video</SupportedMediaTypes> <SupportedMediaTypes>Audio,Photo,Video</SupportedMediaTypes>

@ -9,11 +9,11 @@
</Identification> </Identification>
<FriendlyName>Media Browser</FriendlyName> <FriendlyName>Media Browser</FriendlyName>
<Manufacturer>Media Browser</Manufacturer> <Manufacturer>Media Browser</Manufacturer>
<ManufacturerUrl>http://mediabrowser3.com/</ManufacturerUrl> <ManufacturerUrl>http://mediabrowser.tv/</ManufacturerUrl>
<ModelName>Media Browser</ModelName> <ModelName>Media Browser</ModelName>
<ModelDescription>Media Browser</ModelDescription> <ModelDescription>Media Browser</ModelDescription>
<ModelNumber>Media Browser</ModelNumber> <ModelNumber>Media Browser</ModelNumber>
<ModelUrl>http://mediabrowser3.com/</ModelUrl> <ModelUrl>http://mediabrowser.tv/</ModelUrl>
<IgnoreTranscodeByteRangeRequests>false</IgnoreTranscodeByteRangeRequests> <IgnoreTranscodeByteRangeRequests>false</IgnoreTranscodeByteRangeRequests>
<EnableAlbumArtInDidl>true</EnableAlbumArtInDidl> <EnableAlbumArtInDidl>true</EnableAlbumArtInDidl>
<SupportedMediaTypes>Audio,Photo,Video</SupportedMediaTypes> <SupportedMediaTypes>Audio,Photo,Video</SupportedMediaTypes>

@ -9,11 +9,11 @@
</Identification> </Identification>
<FriendlyName>Media Browser</FriendlyName> <FriendlyName>Media Browser</FriendlyName>
<Manufacturer>Microsoft Corporation</Manufacturer> <Manufacturer>Microsoft Corporation</Manufacturer>
<ManufacturerUrl>http://mediabrowser3.com/</ManufacturerUrl> <ManufacturerUrl>http://mediabrowser.tv/</ManufacturerUrl>
<ModelName>Windows Media Player Sharing</ModelName> <ModelName>Windows Media Player Sharing</ModelName>
<ModelDescription>Media Browser</ModelDescription> <ModelDescription>Media Browser</ModelDescription>
<ModelNumber>3.0</ModelNumber> <ModelNumber>3.0</ModelNumber>
<ModelUrl>http://mediabrowser3.com/</ModelUrl> <ModelUrl>http://mediabrowser.tv/</ModelUrl>
<IgnoreTranscodeByteRangeRequests>false</IgnoreTranscodeByteRangeRequests> <IgnoreTranscodeByteRangeRequests>false</IgnoreTranscodeByteRangeRequests>
<EnableAlbumArtInDidl>false</EnableAlbumArtInDidl> <EnableAlbumArtInDidl>false</EnableAlbumArtInDidl>
<SupportedMediaTypes>Audio,Photo,Video</SupportedMediaTypes> <SupportedMediaTypes>Audio,Photo,Video</SupportedMediaTypes>

@ -11,11 +11,11 @@
</Identification> </Identification>
<FriendlyName>Media Browser</FriendlyName> <FriendlyName>Media Browser</FriendlyName>
<Manufacturer>Microsoft Corporation</Manufacturer> <Manufacturer>Microsoft Corporation</Manufacturer>
<ManufacturerUrl>http://mediabrowser3.com/</ManufacturerUrl> <ManufacturerUrl>http://mediabrowser.tv/</ManufacturerUrl>
<ModelName>Windows Media Player Sharing</ModelName> <ModelName>Windows Media Player Sharing</ModelName>
<ModelDescription>Media Browser</ModelDescription> <ModelDescription>Media Browser</ModelDescription>
<ModelNumber>3.0</ModelNumber> <ModelNumber>3.0</ModelNumber>
<ModelUrl>http://mediabrowser3.com/</ModelUrl> <ModelUrl>http://mediabrowser.tv/</ModelUrl>
<IgnoreTranscodeByteRangeRequests>false</IgnoreTranscodeByteRangeRequests> <IgnoreTranscodeByteRangeRequests>false</IgnoreTranscodeByteRangeRequests>
<EnableAlbumArtInDidl>false</EnableAlbumArtInDidl> <EnableAlbumArtInDidl>false</EnableAlbumArtInDidl>
<SupportedMediaTypes>Audio,Photo,Video</SupportedMediaTypes> <SupportedMediaTypes>Audio,Photo,Video</SupportedMediaTypes>

@ -10,11 +10,11 @@
</Identification> </Identification>
<FriendlyName>Media Browser</FriendlyName> <FriendlyName>Media Browser</FriendlyName>
<Manufacturer>Media Browser</Manufacturer> <Manufacturer>Media Browser</Manufacturer>
<ManufacturerUrl>http://mediabrowser3.com/</ManufacturerUrl> <ManufacturerUrl>http://mediabrowser.tv/</ManufacturerUrl>
<ModelName>Media Browser</ModelName> <ModelName>Media Browser</ModelName>
<ModelDescription>Media Browser</ModelDescription> <ModelDescription>Media Browser</ModelDescription>
<ModelNumber>Media Browser</ModelNumber> <ModelNumber>Media Browser</ModelNumber>
<ModelUrl>http://mediabrowser3.com/</ModelUrl> <ModelUrl>http://mediabrowser.tv/</ModelUrl>
<IgnoreTranscodeByteRangeRequests>false</IgnoreTranscodeByteRangeRequests> <IgnoreTranscodeByteRangeRequests>false</IgnoreTranscodeByteRangeRequests>
<EnableAlbumArtInDidl>false</EnableAlbumArtInDidl> <EnableAlbumArtInDidl>false</EnableAlbumArtInDidl>
<SupportedMediaTypes>Audio,Photo,Video</SupportedMediaTypes> <SupportedMediaTypes>Audio,Photo,Video</SupportedMediaTypes>

@ -10,11 +10,11 @@
</Identification> </Identification>
<FriendlyName>Media Browser</FriendlyName> <FriendlyName>Media Browser</FriendlyName>
<Manufacturer>Media Browser</Manufacturer> <Manufacturer>Media Browser</Manufacturer>
<ManufacturerUrl>http://mediabrowser3.com/</ManufacturerUrl> <ManufacturerUrl>http://mediabrowser.tv/</ManufacturerUrl>
<ModelName>Media Browser</ModelName> <ModelName>Media Browser</ModelName>
<ModelDescription>Media Browser</ModelDescription> <ModelDescription>Media Browser</ModelDescription>
<ModelNumber>Media Browser</ModelNumber> <ModelNumber>Media Browser</ModelNumber>
<ModelUrl>http://mediabrowser3.com/</ModelUrl> <ModelUrl>http://mediabrowser.tv/</ModelUrl>
<IgnoreTranscodeByteRangeRequests>true</IgnoreTranscodeByteRangeRequests> <IgnoreTranscodeByteRangeRequests>true</IgnoreTranscodeByteRangeRequests>
<EnableAlbumArtInDidl>false</EnableAlbumArtInDidl> <EnableAlbumArtInDidl>false</EnableAlbumArtInDidl>
<SupportedMediaTypes>Audio,Photo,Video</SupportedMediaTypes> <SupportedMediaTypes>Audio,Photo,Video</SupportedMediaTypes>

@ -8,11 +8,11 @@
</Identification> </Identification>
<FriendlyName>Media Browser</FriendlyName> <FriendlyName>Media Browser</FriendlyName>
<Manufacturer>Media Browser</Manufacturer> <Manufacturer>Media Browser</Manufacturer>
<ManufacturerUrl>http://mediabrowser3.com/</ManufacturerUrl> <ManufacturerUrl>http://mediabrowser.tv/</ManufacturerUrl>
<ModelName>Media Browser</ModelName> <ModelName>Media Browser</ModelName>
<ModelDescription>Media Browser</ModelDescription> <ModelDescription>Media Browser</ModelDescription>
<ModelNumber>Media Browser</ModelNumber> <ModelNumber>Media Browser</ModelNumber>
<ModelUrl>http://mediabrowser3.com/</ModelUrl> <ModelUrl>http://mediabrowser.tv/</ModelUrl>
<IgnoreTranscodeByteRangeRequests>false</IgnoreTranscodeByteRangeRequests> <IgnoreTranscodeByteRangeRequests>false</IgnoreTranscodeByteRangeRequests>
<EnableAlbumArtInDidl>false</EnableAlbumArtInDidl> <EnableAlbumArtInDidl>false</EnableAlbumArtInDidl>
<SupportedMediaTypes>Audio,Photo,Video</SupportedMediaTypes> <SupportedMediaTypes>Audio,Photo,Video</SupportedMediaTypes>

@ -9,11 +9,11 @@
</Identification> </Identification>
<FriendlyName>Media Browser</FriendlyName> <FriendlyName>Media Browser</FriendlyName>
<Manufacturer>Media Browser</Manufacturer> <Manufacturer>Media Browser</Manufacturer>
<ManufacturerUrl>http://mediabrowser3.com/</ManufacturerUrl> <ManufacturerUrl>http://mediabrowser.tv/</ManufacturerUrl>
<ModelName>Media Browser</ModelName> <ModelName>Media Browser</ModelName>
<ModelDescription>Media Browser</ModelDescription> <ModelDescription>Media Browser</ModelDescription>
<ModelNumber>Media Browser</ModelNumber> <ModelNumber>Media Browser</ModelNumber>
<ModelUrl>http://mediabrowser3.com/</ModelUrl> <ModelUrl>http://mediabrowser.tv/</ModelUrl>
<IgnoreTranscodeByteRangeRequests>false</IgnoreTranscodeByteRangeRequests> <IgnoreTranscodeByteRangeRequests>false</IgnoreTranscodeByteRangeRequests>
<EnableAlbumArtInDidl>false</EnableAlbumArtInDidl> <EnableAlbumArtInDidl>false</EnableAlbumArtInDidl>
<SupportedMediaTypes>Audio</SupportedMediaTypes> <SupportedMediaTypes>Audio</SupportedMediaTypes>

@ -22,7 +22,12 @@ namespace MediaBrowser.Model.Dlna
public List<string> GetCodecs() public List<string> GetCodecs()
{ {
return (Codec ?? string.Empty).Split(',').Where(i => !string.IsNullOrEmpty(i)).ToList(); List<string> list = new List<string>();
foreach (string i in (Codec ?? string.Empty).Split(','))
{
if (!string.IsNullOrEmpty(i)) list.Add(i);
}
return list;
} }
public bool ContainsCodec(string codec) public bool ContainsCodec(string codec)

@ -1,5 +1,4 @@
using System.Collections.Generic; using System.Collections.Generic;
using System.Linq;
using System.Xml.Serialization; using System.Xml.Serialization;
namespace MediaBrowser.Model.Dlna namespace MediaBrowser.Model.Dlna
@ -20,7 +19,12 @@ namespace MediaBrowser.Model.Dlna
public List<string> GetContainers() public List<string> GetContainers()
{ {
return (Container ?? string.Empty).Split(',').Where(i => !string.IsNullOrEmpty(i)).ToList(); List<string> list = new List<string>();
foreach (string i in (Container ?? string.Empty).Split(','))
{
if (!string.IsNullOrEmpty(i)) list.Add(i);
}
return list;
} }
} }
} }

@ -105,7 +105,12 @@ namespace MediaBrowser.Model.Dlna
public List<string> GetSupportedMediaTypes() public List<string> GetSupportedMediaTypes()
{ {
return (SupportedMediaTypes ?? string.Empty).Split(',').Where(i => !string.IsNullOrEmpty(i)).ToList(); List<string> list = new List<string>();
foreach (string i in (SupportedMediaTypes ?? string.Empty).Split(','))
{
if (!string.IsNullOrEmpty(i)) list.Add(i);
}
return list;
} }
public TranscodingProfile GetAudioTranscodingProfile(string container, string audioCodec) public TranscodingProfile GetAudioTranscodingProfile(string container, string audioCodec)

@ -1,5 +1,4 @@
using System.Collections.Generic; using System.Collections.Generic;
using System.Linq;
using System.Xml.Serialization; using System.Xml.Serialization;
namespace MediaBrowser.Model.Dlna namespace MediaBrowser.Model.Dlna
@ -20,17 +19,32 @@ namespace MediaBrowser.Model.Dlna
public List<string> GetContainers() public List<string> GetContainers()
{ {
return (Container ?? string.Empty).Split(',').Where(i => !string.IsNullOrEmpty(i)).ToList(); List<string> list = new List<string>();
foreach (string i in (Container ?? string.Empty).Split(','))
{
if (!string.IsNullOrEmpty(i)) list.Add(i);
}
return list;
} }
public List<string> GetAudioCodecs() public List<string> GetAudioCodecs()
{ {
return (AudioCodec ?? string.Empty).Split(',').Where(i => !string.IsNullOrEmpty(i)).ToList(); List<string> list = new List<string>();
foreach (string i in (AudioCodec ?? string.Empty).Split(','))
{
if (!string.IsNullOrEmpty(i)) list.Add(i);
}
return list;
} }
public List<string> GetVideoCodecs() public List<string> GetVideoCodecs()
{ {
return (VideoCodec ?? string.Empty).Split(',').Where(i => !string.IsNullOrEmpty(i)).ToList(); List<string> list = new List<string>();
foreach (string i in (VideoCodec ?? string.Empty).Split(','))
{
if (!string.IsNullOrEmpty(i)) list.Add(i);
}
return list;
} }
} }
} }

@ -1,5 +1,4 @@
using System.Collections.Generic; using System.Collections.Generic;
using System.Linq;
using System.Xml.Serialization; using System.Xml.Serialization;
namespace MediaBrowser.Model.Dlna namespace MediaBrowser.Model.Dlna
@ -33,17 +32,32 @@ namespace MediaBrowser.Model.Dlna
public List<string> GetContainers() public List<string> GetContainers()
{ {
return (Container ?? string.Empty).Split(',').Where(i => !string.IsNullOrEmpty(i)).ToList(); List<string> list = new List<string>();
foreach (string i in (Container ?? string.Empty).Split(','))
{
if (!string.IsNullOrEmpty(i)) list.Add(i);
}
return list;
} }
public List<string> GetAudioCodecs() public List<string> GetAudioCodecs()
{ {
return (AudioCodec ?? string.Empty).Split(',').Where(i => !string.IsNullOrEmpty(i)).ToList(); List<string> list = new List<string>();
foreach (string i in (AudioCodec ?? string.Empty).Split(','))
{
if (!string.IsNullOrEmpty(i)) list.Add(i);
}
return list;
} }
public List<string> GetVideoCodecs() public List<string> GetVideoCodecs()
{ {
return (VideoCodec ?? string.Empty).Split(',').Where(i => !string.IsNullOrEmpty(i)).ToList(); List<string> list = new List<string>();
foreach (string i in (VideoCodec ?? string.Empty).Split(','))
{
if (!string.IsNullOrEmpty(i)) list.Add(i);
}
return list;
} }
} }
} }

@ -24,12 +24,17 @@ namespace MediaBrowser.Model.Dlna
// Avoid implicitly captured closure // Avoid implicitly captured closure
string mediaSourceId = options.MediaSourceId; string mediaSourceId = options.MediaSourceId;
mediaSources = mediaSources mediaSources = new List<MediaSourceInfo>();
.Where(i => string.Equals(i.Id, mediaSourceId, StringComparison.OrdinalIgnoreCase)) foreach (MediaSourceInfo i in mediaSources)
.ToList(); {
if (string.Equals(i.Id, mediaSourceId, StringComparison.OrdinalIgnoreCase))
mediaSources.Add(i);
}
} }
List<StreamInfo> streams = mediaSources.Select(i => BuildAudioItem(i, options)).ToList(); List<StreamInfo> streams = new List<StreamInfo>();
foreach (MediaSourceInfo i in mediaSources)
streams.Add(BuildAudioItem(i, options));
foreach (StreamInfo stream in streams) foreach (StreamInfo stream in streams)
{ {
@ -52,12 +57,17 @@ namespace MediaBrowser.Model.Dlna
// Avoid implicitly captured closure // Avoid implicitly captured closure
string mediaSourceId = options.MediaSourceId; string mediaSourceId = options.MediaSourceId;
mediaSources = mediaSources mediaSources = new List<MediaSourceInfo>();
.Where(i => string.Equals(i.Id, mediaSourceId, StringComparison.OrdinalIgnoreCase)) foreach (MediaSourceInfo i in mediaSources)
.ToList(); {
if (string.Equals(i.Id, mediaSourceId, StringComparison.OrdinalIgnoreCase))
mediaSources.Add(i);
}
} }
List<StreamInfo> streams = mediaSources.Select(i => BuildVideoItem(i, options)).ToList(); List<StreamInfo> streams = new List<StreamInfo>();
foreach (MediaSourceInfo i in mediaSources)
streams.Add(BuildVideoItem(i, options));
foreach (StreamInfo stream in streams) foreach (StreamInfo stream in streams)
{ {
@ -72,8 +82,19 @@ namespace MediaBrowser.Model.Dlna
{ {
// Grab the first one that can be direct streamed // Grab the first one that can be direct streamed
// If that doesn't produce anything, just take the first // If that doesn't produce anything, just take the first
return streams.FirstOrDefault(i => i.IsDirectStream) ?? foreach (StreamInfo i in streams)
streams.FirstOrDefault(); {
if (i.IsDirectStream)
{
return i;
}
}
foreach (StreamInfo stream in streams)
{
return stream;
}
return null;
} }
private StreamInfo BuildAudioItem(MediaSourceInfo item, AudioOptions options) private StreamInfo BuildAudioItem(MediaSourceInfo item, AudioOptions options)
@ -191,8 +212,15 @@ namespace MediaBrowser.Model.Dlna
} }
// Can't direct play, find the transcoding profile // Can't direct play, find the transcoding profile
TranscodingProfile transcodingProfile = options.Profile.TranscodingProfiles TranscodingProfile transcodingProfile = null;
.FirstOrDefault(i => i.Type == playlistItem.MediaType); foreach (TranscodingProfile i in options.Profile.TranscodingProfiles)
{
if (i.Type == playlistItem.MediaType)
{
transcodingProfile = i;
break;
}
}
if (transcodingProfile != null) if (transcodingProfile != null)
{ {
@ -200,7 +228,7 @@ namespace MediaBrowser.Model.Dlna
playlistItem.Container = transcodingProfile.Container; playlistItem.Container = transcodingProfile.Container;
playlistItem.EstimateContentLength = transcodingProfile.EstimateContentLength; playlistItem.EstimateContentLength = transcodingProfile.EstimateContentLength;
playlistItem.TranscodeSeekInfo = transcodingProfile.TranscodeSeekInfo; playlistItem.TranscodeSeekInfo = transcodingProfile.TranscodeSeekInfo;
playlistItem.AudioCodec = transcodingProfile.AudioCodec.Split(',').FirstOrDefault(); playlistItem.AudioCodec = transcodingProfile.AudioCodec.Split(',')[0];
playlistItem.VideoCodec = transcodingProfile.VideoCodec; playlistItem.VideoCodec = transcodingProfile.VideoCodec;
playlistItem.Protocol = transcodingProfile.Protocol; playlistItem.Protocol = transcodingProfile.Protocol;
playlistItem.AudioStreamIndex = options.AudioStreamIndex; playlistItem.AudioStreamIndex = options.AudioStreamIndex;
@ -261,8 +289,15 @@ namespace MediaBrowser.Model.Dlna
MediaStream audioStream) MediaStream audioStream)
{ {
// See if it can be direct played // See if it can be direct played
DirectPlayProfile directPlay = profile.DirectPlayProfiles DirectPlayProfile directPlay = null;
.FirstOrDefault(i => i.Type == DlnaProfileType.Video && IsVideoDirectPlaySupported(i, mediaSource, videoStream, audioStream)); foreach (DirectPlayProfile i in profile.DirectPlayProfiles)
{
if (i.Type == DlnaProfileType.Video && IsVideoDirectPlaySupported(i, mediaSource, videoStream, audioStream))
{
directPlay = i;
break;
}
}
if (directPlay == null) if (directPlay == null)
{ {

@ -1,11 +1,10 @@
using MediaBrowser.Model.Drawing; using MediaBrowser.Model.Drawing;
using MediaBrowser.Model.Dto; using MediaBrowser.Model.Dto;
using MediaBrowser.Model.Entities; using MediaBrowser.Model.Entities;
using MediaBrowser.Model.MediaInfo;
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Globalization; using System.Globalization;
using System.Linq;
using MediaBrowser.Model.MediaInfo;
namespace MediaBrowser.Model.Dlna namespace MediaBrowser.Model.Dlna
{ {
@ -134,14 +133,23 @@ namespace MediaBrowser.Model.Dlna
{ {
if (MediaSource != null) if (MediaSource != null)
{ {
IEnumerable<MediaStream> audioStreams = MediaSource.MediaStreams.Where(i => i.Type == MediaStreamType.Audio);
if (AudioStreamIndex.HasValue) if (AudioStreamIndex.HasValue)
{ {
return audioStreams.FirstOrDefault(i => i.Index == AudioStreamIndex.Value); foreach (MediaStream i in MediaSource.MediaStreams)
{
if (i.Index == AudioStreamIndex.Value && i.Type == MediaStreamType.Audio)
return i;
}
return null;
}
foreach (MediaStream stream in MediaSource.MediaStreams)
{
if (stream.Type == MediaStreamType.Audio)
return stream;
} }
return audioStreams.FirstOrDefault(); return null;
} }
return null; return null;
@ -157,8 +165,12 @@ namespace MediaBrowser.Model.Dlna
{ {
if (MediaSource != null) if (MediaSource != null)
{ {
return MediaSource.MediaStreams foreach (MediaStream i in MediaSource.MediaStreams)
.FirstOrDefault(i => i.Type == MediaStreamType.Video && (i.Codec ?? string.Empty).IndexOf("jpeg", StringComparison.OrdinalIgnoreCase) == -1); {
if (i.Type == MediaStreamType.Video && (i.Codec ?? string.Empty).IndexOf("jpeg", StringComparison.OrdinalIgnoreCase) == -1)
return i;
}
return null;
} }
return null; return null;

@ -35,7 +35,12 @@ namespace MediaBrowser.Model.Dlna
public List<string> GetAudioCodecs() public List<string> GetAudioCodecs()
{ {
return (AudioCodec ?? string.Empty).Split(',').Where(i => !string.IsNullOrEmpty(i)).ToList(); List<string> list = new List<string>();
foreach (string i in (AudioCodec ?? string.Empty).Split(','))
{
if (!string.IsNullOrEmpty(i)) list.Add(i);
}
return list;
} }
} }
} }

@ -138,7 +138,7 @@ namespace MediaBrowser.Server.Implementations.EntryPoints.Notifications
var notification = new NotificationRequest var notification = new NotificationRequest
{ {
Description = "Please see mediabrowser3.com for details.", Description = "Please see mediabrowser.tv for details.",
NotificationType = type NotificationType = type
}; };

@ -45,7 +45,7 @@ namespace MediaBrowser.ServerApplication.Native
/// <param name="logger">The logger.</param> /// <param name="logger">The logger.</param>
public static void OpenCommunity(ILogger logger) public static void OpenCommunity(ILogger logger)
{ {
OpenUrl("http://mediabrowser3.com/community", logger); OpenUrl("http://mediabrowser.tv/community", logger);
} }
/// <summary> /// <summary>

Loading…
Cancel
Save