mirror of
https://github.com/RatzzFatzz/MKVAudioSubtitleChanger.git
synced 2026-02-11 10:05:58 +01:00
Prepare for coherent feature by restructuring AttributeUpdaterKernel
This commit is contained in:
@@ -1,5 +1,6 @@
|
||||
package at.pcgamingfreaks.mkvaudiosubtitlechanger.impl;
|
||||
|
||||
import at.pcgamingfreaks.mkvaudiosubtitlechanger.exceptions.MkvToolNixException;
|
||||
import at.pcgamingfreaks.mkvaudiosubtitlechanger.model.FileAttribute;
|
||||
import at.pcgamingfreaks.mkvaudiosubtitlechanger.model.FileInfoDto;
|
||||
|
||||
@@ -10,12 +11,35 @@ import java.util.List;
|
||||
public interface FileProcessor {
|
||||
|
||||
/**
|
||||
* Load track information from file.
|
||||
*
|
||||
* @param file Takes the file from which the attributes will be returned
|
||||
* @return list of all important attributes
|
||||
*/
|
||||
List<FileAttribute> loadAttributes(File file);
|
||||
|
||||
FileInfoDto filterAttributes(List<FileAttribute> attributes);
|
||||
/**
|
||||
* Populate FileInfoDto with the currently set default tracks.
|
||||
* @param info to be populated
|
||||
* @param attributes Track information of FileInfoDto
|
||||
* @param nonForcedTracks List of all not forced tracks
|
||||
*/
|
||||
void detectDefaultTracks(FileInfoDto info, List<FileAttribute> attributes, List<FileAttribute> nonForcedTracks);
|
||||
|
||||
void update(File file, FileInfoDto fileInfo) throws IOException;
|
||||
/**
|
||||
* Populate FileInfoDto with the desired tracks, based on AttributeConfig.
|
||||
* @param info to be populated
|
||||
* @param nonForcedTracks List of all not forced tracks
|
||||
* @param nonCommentaryTracks List of all not commentary tracks
|
||||
*/
|
||||
void detectDesiredTracks(FileInfoDto info, List<FileAttribute> nonForcedTracks, List<FileAttribute> nonCommentaryTracks);
|
||||
|
||||
/**
|
||||
* Update the file.
|
||||
* @param file to be updated
|
||||
* @param fileInfo information to update file
|
||||
* @throws IOException
|
||||
* @throws MkvToolNixException when error occurs while sending query to mkvpropedit
|
||||
*/
|
||||
void update(File file, FileInfoDto fileInfo) throws IOException, MkvToolNixException;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user