mirror of
https://github.com/jellyfin/jellyfin.git
synced 2026-03-06 18:26:33 +00:00
update naming methods
This commit is contained in:
@@ -321,9 +321,10 @@ namespace MediaBrowser.Server.Implementations.FileOrganization
|
||||
|
||||
private Series GetMatchingSeries(string seriesName, FileOrganizationResult result)
|
||||
{
|
||||
int? yearInName;
|
||||
var nameWithoutYear = seriesName;
|
||||
NameParser.ParseName(nameWithoutYear, out nameWithoutYear, out yearInName);
|
||||
var parsedName = _libraryManager.ParseName(seriesName);
|
||||
|
||||
var yearInName = parsedName.Year;
|
||||
var nameWithoutYear = parsedName.Name;
|
||||
|
||||
result.ExtractedName = nameWithoutYear;
|
||||
result.ExtractedYear = yearInName;
|
||||
|
||||
@@ -21,7 +21,6 @@ using MediaBrowser.Naming.Video;
|
||||
using MediaBrowser.Server.Implementations.Library.Resolvers.TV;
|
||||
using MediaBrowser.Server.Implementations.Library.Validators;
|
||||
using MediaBrowser.Server.Implementations.ScheduledTasks;
|
||||
using MoreLinq;
|
||||
using System;
|
||||
using System.Collections.Concurrent;
|
||||
using System.Collections.Generic;
|
||||
@@ -1635,8 +1634,8 @@ namespace MediaBrowser.Server.Implementations.Library
|
||||
|
||||
public bool IsVideoFile(string path)
|
||||
{
|
||||
var parser = new VideoFileParser(new ExpandedVideoOptions(), new Naming.Logging.NullLogger());
|
||||
return parser.IsVideoFile(path);
|
||||
var resolver = new VideoResolver(new ExpandedVideoOptions(), new AudioOptions(), new Naming.Logging.NullLogger());
|
||||
return resolver.IsVideoFile(path);
|
||||
}
|
||||
|
||||
public bool IsAudioFile(string path)
|
||||
@@ -1647,13 +1646,13 @@ namespace MediaBrowser.Server.Implementations.Library
|
||||
|
||||
public bool IsMultiPartFile(string path)
|
||||
{
|
||||
var parser = new MultiPartParser(new ExpandedVideoOptions(), new Naming.Logging.NullLogger());
|
||||
var parser = new MultiPartParser(new ExpandedVideoOptions(), new AudioOptions(), new Naming.Logging.NullLogger());
|
||||
return parser.Parse(path, FileInfoType.File).IsMultiPart;
|
||||
}
|
||||
|
||||
public bool IsMultiPartFolder(string path)
|
||||
{
|
||||
var parser = new MultiPartParser(new ExpandedVideoOptions(), new Naming.Logging.NullLogger());
|
||||
var parser = new MultiPartParser(new ExpandedVideoOptions(), new AudioOptions(), new Naming.Logging.NullLogger());
|
||||
return parser.Parse(path, FileInfoType.Directory).IsMultiPart;
|
||||
}
|
||||
|
||||
@@ -1676,5 +1675,18 @@ namespace MediaBrowser.Server.Implementations.Library
|
||||
{
|
||||
return SeriesResolver.GetEpisodeNumberFromFile(path, considerSeasonless);
|
||||
}
|
||||
|
||||
public ItemLookupInfo ParseName(string name)
|
||||
{
|
||||
var resolver = new VideoResolver(new ExpandedVideoOptions(), new AudioOptions(), new Naming.Logging.NullLogger());
|
||||
|
||||
var result = resolver.CleanDateTime(name);
|
||||
|
||||
return new ItemLookupInfo
|
||||
{
|
||||
Name = result.Name,
|
||||
Year = result.Year
|
||||
};
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
using MediaBrowser.Controller.Entities;
|
||||
using MediaBrowser.Controller.Library;
|
||||
using MediaBrowser.Model.Entities;
|
||||
using MediaBrowser.Naming.Audio;
|
||||
using MediaBrowser.Naming.Video;
|
||||
using System;
|
||||
|
||||
@@ -42,8 +43,8 @@ namespace MediaBrowser.Server.Implementations.Library.Resolvers
|
||||
// If the path is a file check for a matching extensions
|
||||
if (!args.IsDirectory)
|
||||
{
|
||||
var parser = new VideoFileParser(new ExpandedVideoOptions(), new Naming.Logging.NullLogger());
|
||||
var videoInfo = parser.ParseFile(args.Path);
|
||||
var parser = new Naming.Video.VideoResolver(new ExpandedVideoOptions(), new AudioOptions(), new Naming.Logging.NullLogger());
|
||||
var videoInfo = parser.ResolveFile(args.Path);
|
||||
|
||||
if (videoInfo == null)
|
||||
{
|
||||
@@ -67,7 +68,8 @@ namespace MediaBrowser.Server.Implementations.Library.Resolvers
|
||||
IsInMixedFolder = true,
|
||||
IsPlaceHolder = videoInfo.IsStub,
|
||||
IsShortcut = isShortcut,
|
||||
Name = videoInfo.Name
|
||||
Name = videoInfo.Name,
|
||||
ProductionYear = videoInfo.Year
|
||||
};
|
||||
|
||||
if (videoInfo.IsStub)
|
||||
|
||||
@@ -70,6 +70,10 @@ namespace MediaBrowser.Server.Implementations.Library.Resolvers.TV
|
||||
|
||||
if (episode != null)
|
||||
{
|
||||
// The base video resolver is going to fill these in, so null them out
|
||||
episode.ProductionYear = null;
|
||||
episode.Name = null;
|
||||
|
||||
if (season != null)
|
||||
{
|
||||
episode.ParentIndexNumber = season.IndexNumber;
|
||||
|
||||
@@ -51,7 +51,7 @@
|
||||
</Reference>
|
||||
<Reference Include="MediaBrowser.Naming, Version=1.0.0.0, Culture=neutral, processorArchitecture=MSIL">
|
||||
<SpecificVersion>False</SpecificVersion>
|
||||
<HintPath>..\packages\MediaBrowser.Naming.1.0.0.1\lib\portable-net45+sl4+wp71+win8+wpa81\MediaBrowser.Naming.dll</HintPath>
|
||||
<HintPath>..\packages\MediaBrowser.Naming.1.0.0.2\lib\portable-net45+sl4+wp71+win8+wpa81\MediaBrowser.Naming.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Mono.Nat, Version=1.2.21.0, Culture=neutral, processorArchitecture=MSIL">
|
||||
<SpecificVersion>False</SpecificVersion>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<packages>
|
||||
<package id="MediaBrowser.Naming" version="1.0.0.1" targetFramework="net45" />
|
||||
<package id="MediaBrowser.Naming" version="1.0.0.2" targetFramework="net45" />
|
||||
<package id="Mono.Nat" version="1.2.21.0" targetFramework="net45" />
|
||||
<package id="morelinq" version="1.1.0" targetFramework="net45" />
|
||||
</packages>
|
||||
Reference in New Issue
Block a user