/*
This file is part of JFLICKS.
JFLICKS is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
JFLICKS is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with JFLICKS. If not, see <http://www.gnu.org/licenses/>.
*/
package org.jflicks.nms;
/**
* This class defines system-wide constant values.
*
* @author Doug Barnum
* @version 1.0
*/
public final class NMSConstants {
/**
* The NMS needs a property called "Image Home".
*/
public static final String IMAGE_HOME = "Image Home";
/**
* The Banner image type.
*/
public static final int BANNER_IMAGE_TYPE = 0;
/**
* The Fanart image type.
*/
public static final int FANART_IMAGE_TYPE = 1;
/**
* The Poster image type.
*/
public static final int POSTER_IMAGE_TYPE = 2;
/**
* The configuration name for a "Live" service.
*/
public static final String LIVE_NAME = "Live";
/**
* The channel number to start with when doing live TV.
*/
public static final String LIVE_START_CHANNEL = "Live Start Channel";
/**
* The channel number to start with when doing live TV.
*/
public static final String LIVE_DIRECTORY = "Live Directory";
/**
* The minimum number of segments generated before returning from
* an open for live TV.
*/
public static final String MINIMUM_SEGMENT_COUNT = "Minimum Segment Count";
/**
* The configuration name for a "OnDemand" service.
*/
public static final String ON_DEMAND_NAME = "OnDemand";
/**
* The configuration name for a "Photo Manager" service.
*/
public static final String PHOTO_MANAGER_NAME = "Photo Manager";
/**
* The channel number to start with when doing live TV.
*/
public static final String PHOTO_MANAGER_URL = "Photo Manager URL";
/**
* The configuration name for a "Post Proc" service.
*/
public static final String POST_PROC_NAME = "Post Proc";
/**
* The PostProc needs a property called "Maximum Jobs".
*/
public static final String POST_PROC_MAXIMUM_JOBS = "Maximum Jobs";
/**
* The configuration name for a "Program Data" service.
*/
public static final String PROGRAM_DATA_NAME = "Program Data";
/**
* The configuration name for a "Recorder" service.
*/
public static final String RECORDER_NAME = "Recorder";
/**
* The configuration name for a Recorder service "Audio Input".
*/
public static final String AUDIO_INPUT_NAME = "Audio Input";
/**
* The configuration name for a Recorder service "Video Input".
*/
public static final String VIDEO_INPUT_NAME = "Video Input";
/**
* The configuration name for a Recorder service "Frequency Table".
*/
public static final String FREQUENCY_TABLE_NAME = "Frequency Table";
/**
* Some Recorder instances may need to use the channel name to change
* channels. That can be controlled with this property.
*/
public static final String USE_CHANNEL_NAME = "Use Channel Name";
/**
* The configuration name for a Recorder service to
* "Change Channel Script".
*/
public static final String CHANGE_CHANNEL_SCRIPT_NAME =
"Change Channel Script";
/**
* The configuration name for a Recorder service to flag that channel
* change is ready.
*/
public static final String CHANGE_CHANNEL_READY_TEXT =
"Change Channel Ready Text";
/**
* The configuration recording indexer name for a Recorder service to
* perform a recording indexer.
*/
public static final String RECORDING_INDEXER_NAME = "Recording Indexer";
/**
* The configuration to control audio transcoding during recording.
*/
public static final String AUDIO_TRANSCODE_OPTIONS =
"Audio Transcode Options";
/**
* The configuration to define READ_MODE.
*/
public static final String READ_MODE = "Read Mode";
/**
* The configuration to define READ_MODE_COPY_ONLY.
*/
public static final String READ_MODE_COPY_ONLY = "Read Mode Copy Only";
/**
* The configuration to define READ_MODE_UDP.
*/
public static final String READ_MODE_UDP = "Read Mode UDP";
/**
* The configuration to define READ_MODE_FFMPEG_DIRECT.
*/
public static final String READ_MODE_FFMPEG_DIRECT = "Read Mode FFmpeg Direct";
/**
* The configuration to signal HLS recording mode.
*/
public static final String HLS_MODE = "HLS Mode";
/**
* A Recorder can have a custom Channel list associated with it. Using
* this a user can say a particular Recorder only supports a subset
* of Channels from a ProgramData listing.
*/
public static final String CUSTOM_CHANNEL_LIST = "Custom Channel List";
/**
* The type of CUSTOM_CHANNEL_LIST, either LIST_IS_A_BLACKLIST or
* LIST_IS_A_WHITELIST.
*/
public static final String CUSTOM_CHANNEL_LIST_TYPE =
"Custom Channel List Type";
/**
* The CUSTOM_CHANNEL_LIST is to be ignored.
*/
public static final String LIST_IS_IGNORED = "List is ignored";
/**
* The CUSTOM_CHANNEL_LIST is interpreted as a blacklist of channels
* that the Recorder cannot record. But it can record the rest of the
* Channels from the ProgramData listing.
*/
public static final String LIST_IS_A_BLACKLIST = "List is a blacklist";
/**
* The CUSTOM_CHANNEL_LIST is interpreted as a whitelist of channels
* that the Recorder can record. It cannot record the rest of the
* Channels from the ProgramData listing.
*/
public static final String LIST_IS_A_WHITELIST = "List is a whitelist";
/**
* The configuration name for a "NMS" service.
*/
public static final String NMS_NAME = "NMS";
/**
* There should be at most just one NMS service and it's source
* name is defined as "NMS System" service.
*/
public static final String NMS_SOURCE = "NMS System";
/**
* The configuration name for a "Scheduler" service.
*/
public static final String SCHEDULER_NAME = "Scheduler";
/**
* There should be at most just one Scheduler service and it's source
* name is defined as "Scheduler System" service. We can envision
* not having a Scheduler service in an NMS that does not have PVR
* functionality.
*/
public static final String SCHEDULER_SOURCE = "Scheduler System";
/**
* The configuration name for a "Video Manager" service.
*/
public static final String VIDEO_MANAGER_NAME = "Video Manager";
/**
* The configuration name for a "Auto Art" service.
*/
public static final String AUTO_ART_NAME = "Auto Art";
/**
* The NMS needs a configuration of a set of one or more
* file system directories where videos can be found.
*/
public static final String VIDEO_DIRECTORIES = "Video Directories";
/**
* The Scheduler needs a preferred hour of the day for it to
* update.
*/
public static final String UPDATE_HOUR = "Update Hour";
/**
* The NMS needs a configuration of a set of one or more
* video file name extensions that identify a video file.
*/
public static final String VIDEO_EXTENSIONS = "Video Extensions";
/**
* The NMS needs a configuration of where downloaded trailers are
* located.
*/
public static final String TRAILER_HOME = "Trailer Home";
/**
* The NMS needs a configuration of where a intro file for
* playing trailers is located.
*/
public static final String TRAILER_INTRO = "Trailer Intro";
/**
* We want to auto delete movie trailers by having a max number
* to keep.
*/
public static final String MAX_TRAILER_COUNT = "Max Trailer Count";
/**
* The NMS needs a configuration of where a intro file for
* playing a feature movie is located. This is in 16:9 aspect ratio.
*/
public static final String FEATURE_INTRO_169 = "Feature Intro 16:9";
/**
* The NMS needs a configuration of where a intro file for
* playing a feature movie is located. This is in 2.35:1 aspect ratio.
*/
public static final String FEATURE_INTRO_235 = "Feature Intro 2.35:1";
/**
* The NMS needs a configuration of where a intro file for
* playing a feature movie is located. This is in 4:3 aspect ratio.
*/
public static final String FEATURE_INTRO_43 = "Feature Intro 4:3";
/**
* An NMS can be put in logical groups by giving an instance a
* group name.
*/
public static final String GROUP_NAME = "Group Name";
/**
* The NMS needs to have an idea where it's local HTTP server has it's
* document root. Since an NMS deals with real paths it needs to be
* told where it can find the HTTP server files are served.
*/
public static final String HTTP_DOCUMENT_ROOT = "HTTP Document Root";
/**
* Real files reside on locations that may need translation from
* their real path to where the HTTP server "sees" them, this is
* usually via some link if the real path is on another drive.
*/
public static final String STREAM_PATHS = "Stream Paths";
/**
* Category of Video called "Movie".
*/
public static final String VIDEO_MOVIE = "Movie";
/**
* Category of Video called "TV".
*/
public static final String VIDEO_TV = "TV";
/**
* Category of Video called "Home".
*/
public static final String VIDEO_HOME = "Home";
/**
* Category of Video called "Exercise".
*/
public static final String VIDEO_EXERCISE = "Exercise";
/**
* Description for a Recorder service.
*/
public static final String RECORDING_DEVICE = "Recording Device";
/**
* Recorders and ProgramData Listings need to be "connected" to allow
* for recordings. There can be Recorders that are found and known
* about but may not want to be used. So they can't be used unless
* they are matched with a listing name. They will default to this
* value which is "Not Connected".
*/
public static final String NOT_CONNECTED = "Not Connected";
/**
* The Scheduler needs a configuration of a set of one or more
* file system directories where recordings can be placed.
*/
public static final String RECORDING_DIRECTORIES = "Recording Directories";
/**
* The Http Stream service will make static content that are streams
* available using the HTTP_STREAM_NAME definition.
*/
public static final String HTTP_STREAM_NAME = "stream";
/**
* The Http Stream service will make static content that are images
* available using the HTTP_IMAGES_NAME definition.
*/
public static final String HTTP_IMAGES_NAME = "images";
/**
* The configuration name for a "Trailer" service.
*/
public static final String TRAILER_NAME = "Trailer";
/**
* The configuration name for a "Web" service.
*/
public static final String WEB_NAME = "Web";
/**
* The Web service might access RSS feeds.
*/
public static final String WEB_RSS_FEEDS = "Feed URLs";
/**
* Defined Movie Genre "Action".
*/
public static final String ADVENTURE_GENRE = "Adventure";
/**
* Defined Movie Genre "Christmas".
*/
public static final String CHRISTMAS_GENRE = "Christmas";
/**
* Defined Movie Genre "Comedy".
*/
public static final String COMEDY_GENRE = "Comedy";
/**
* Defined Movie Genre "Drama".
*/
public static final String DRAMA_GENRE = "Drama";
/**
* Defined Movie Genre "Family".
*/
public static final String FAMILY_GENRE = "Family";
/**
* Defined Movie Genre "Horror".
*/
public static final String HORROR_GENRE = "Horror";
/**
* Defined Movie Genre "Musical".
*/
public static final String MUSICAL_GENRE = "Musical";
/**
* Defined Movie Genre "Mystery".
*/
public static final String MYSTERY_GENRE = "Mystery";
/**
* Defined Movie Genre "Now Showing".
*/
public static final String NOW_SHOWING_GENRE = "Now Showing";
/**
* Defined Movie Genre "Romantic Comedy".
*/
public static final String ROMANTIC_COMEDY_GENRE = "Romantic Comedy";
/**
* Defined Movie Genre "Scifi".
*/
public static final String SCIFI_GENRE = "Scifi";
/**
* Defined Movie Genre "Thriller".
*/
public static final String THRILLER_GENRE = "Thriller";
/**
* Defined Movie Genre "War".
*/
public static final String WAR_GENRE = "War";
/**
* Defined Movie Genre "Western".
*/
public static final String WESTERN_GENRE = "Western";
/**
* Defined Movie Genre "Western".
*/
public static final String UNKNOWN_GENRE = "Unknown";
/**
* Aspect Ratio 16x9.
*/
public static final String ASPECT_RATIO_16X9 = "16x9";
/**
* Aspect Ratio 4x3.
*/
public static final String ASPECT_RATIO_4X3 = "4x3";
/**
* Aspect Ratio 2.35:1.
*/
public static final String ASPECT_RATIO_235X1 = "2.35:1";
/**
* Dolby Digital 5.1.
*/
public static final int AUDIO_DOLBY_DIGITAL_5_1 = 1;
/**
* Dolby Digital 2.0.
*/
public static final int AUDIO_DOLBY_DIGITAL_2_0 = 2;
/**
* Video in 1080i.
*/
public static final int VIDEO_1080I = 1;
/**
* Video in 1080p.
*/
public static final int VIDEO_1080P = 2;
/**
* Video in 720p.
*/
public static final int VIDEO_720P = 3;
/**
* Video in 480i.
*/
public static final int VIDEO_480I = 4;
/**
* Video in 480p.
*/
public static final int VIDEO_480P = 5;
/**
* Communication from the NMS to clients is handled by sending messages
* via the EventAdmin service. We define a message to tell clients that
* a Recording has been updated in some way and they should go get it
* so they have the updated information.
*/
public static final String MESSAGE_RECORDING_UPDATE = "RecordingUpdate";
/**
* Communication from the NMS to clients is handled by sending messages
* via the EventAdmin service. We define a message to tell clients that
* a Recording has been added and they should go get all recordings and
* update their lists.
*/
public static final String MESSAGE_RECORDING_ADDED = "RecordingAdded";
/**
* Communication from the NMS to clients is handled by sending messages
* via the EventAdmin service. We define a message to tell clients that
* a Recording has been removed and they should go get all recordings and
* update their lists.
*/
public static final String MESSAGE_RECORDING_REMOVED = "RecordingRemoved";
/**
* Communication from the NMS to clients is handled by sending messages
* via the EventAdmin service. We define a message to tell clients that
* a RecordingRule has been updated in some way and they should go get all
* rules and update their lists.
*/
public static final String MESSAGE_RULE_UPDATE = "RecordingRuleUpdate";
/**
* Communication from the NMS to clients is handled by sending messages
* via the EventAdmin service. We define a message to tell clients that
* a RecordingRule has been added and they should go get all rules and
* update their lists.
*/
public static final String MESSAGE_RULE_ADDED = "RecordingRuleAdded";
/**
* Communication from the NMS to clients is handled by sending messages
* via the EventAdmin service. We define a message to tell clients that
* the upcoming recording schedule has been updated and they should go
* get all upcoming recordings.
*/
public static final String MESSAGE_SCHEDULE_UPDATE = "ScheduleUpdate";
/**
* Communication from the NMS to clients is handled by sending messages
* via the EventAdmin service. We define a message to tell clients that
* there is some update from a Recorder scan performance.
*/
public static final String MESSAGE_RECORDER_SCAN_UPDATE = "RecorderScan";
/**
* A search defined to only examine the title.
*/
public static final int SEARCH_TITLE = 1;
/**
* A search defined to only examine the description.
*/
public static final int SEARCH_DESCRIPTION = 2;
/**
* A search defined to examine both the title and description.
*/
public static final int SEARCH_TITLE_DESCRIPTION = 3;
/**
* A search defined to only examine the title starting with some String.
*/
public static final int SEARCH_TITLE_STARTS_WITH = 4;
/**
* Status of an upcoming recording when it has been done previously.
*/
public static final String PREVIOUSLY_RECORDED = "Previously Recorded";
/**
* Status of an upcoming recording when it will be recorded later.
*/
public static final String LATER = "Later";
/**
* Status of an upcoming recording when it will be recorded earlier.
*/
public static final String EARLIER = "Earlier";
/**
* Status of an upcoming recording when it is ready.
*/
public static final String READY = "Ready";
/**
* Status of an upcoming recording when it has a conflict.
*/
public static final String CONFLICT = "Conflict";
/**
* Status of an upcoming recording when it is undetermined.
*/
public static final String UNDETERMINED = "Undetermined";
/**
* A constant for services that may need to define a host property.
*/
public static final String HOST = "Host";
/**
* A constant for services that may need to define a port property.
*/
public static final String PORT = "Port";
/**
* A constant for services that may need to define a stream port property.
*/
public static final String STREAM_PORT = "StreamPort";
/**
* A constant for services that may need to do work every once in
* a while.
*/
public static final String UPDATE_TIME_IN_MINUTES =
"Update Time In Minutes";
/**
* A constant for services that may need to define a user name property.
*/
public static final String USER_NAME = "User Name";
/**
* A constant for services that may need to define a password property.
*/
public static final String PASSWORD = "Password";
public static final String COUNTRY = "Country";
public static final String ZIP_CODE = "Zip Code";
/**
* A constant for identifying over the air frequency type.
*/
public static final String OTA = "Over the air";
/**
* A constant for identifying over the cable tv frequency type.
*/
public static final String CABLE = "Cable";
/**
* A constant for defining a tag for the Cleaner property timeBetweenCleanings.
*/
public static final String CLEANER_TIME_BETWEEN_CLEANINGS = "Time between cleanings";
/**
* A constant for defining a tag for the Cleaner property recordingMinimumAge.
*/
public static final String CLEANER_RECORDING_MINIMUM_AGE = "Recording minimum age";
private NMSConstants() {
}
}