Package com.wowza.wms.pushpublish.model
Class PushPublishHTTPBase
- Object
- 
- com.wowza.wms.pushpublish.model.PushPublishBase
- 
- com.wowza.wms.pushpublish.model.PushPublishHTTPBase
 
 
- 
- All Implemented Interfaces:
- IPushPublish
 - Direct Known Subclasses:
- PushPublishHTTPCupertino,- PushPublishHTTPYouTubeBase
 
 public abstract class PushPublishHTTPBase extends PushPublishBase 
- 
- 
Field SummaryFields Modifier and Type Field Description static FloatCACHE_CONTROL_FACTORstatic StringCACHE_CONTROL_HEADERstatic StringCACHE_CONTROL_HEADER_KEYstatic StringCACHE_CONTROL_HEADER_NONEstatic IntegerCACHE_CONTROL_MEDIA_DEFAULTCache Control header constants, used in push publish file cache control .e.g Cloud Storage ( S3, Azure, GCS )protected booleanhttpLogManifestsEnables logging of the manifest itself.protected booleanhttpManifestDebugEnables manifest playlist debug logging.protected static intINDETERMINATE_PLAYLIST_COUNTprotected intmaxSegmentCountFromMapThe max segment count from PushPublishMap.txt.protected intmaxSegmentCountFromPacketizerThe max segment count used by the associated live stream packetizer.protected static intMIN_PLAYLIST_COUNTThe minimum allowable playlist size.protected booleanplaylistAcrossSessionsIndicates whether instance-specific playlists should be maintained across source stream interruptions and app restarts.protected StringplaylistBaseUrlbase url to use in playlist/manifestprotected intplaylistCountFromMapThe playlist size from the map entry.protected intplaylistCountFromPacketizerThe playlist size used by the associated live stream packetizer.protected StringplaylistCrossNameThe instance-specific name for the playlist, allowing the playlist to be maintained across session restarts.protected longplaylistDurationFromMapThe playlist duration from the map entry.protected PushPublishHTTPPlaylistMapplaylistMapThe playlist map.protected StringplaylistNameThe actual name of playlist file that is to be pushed to the destination (e.g.protected intplaylistTimeoutThe timeout value used to delete orphaned playlists from the vhost.protected booleanrelativePlaylistsuse only relative URL references in the playlist/manifest.- 
Fields inherited from class com.wowza.wms.pushpublish.model.PushPublishBaseappInstance, className, DESTINATION_BAK, DESTINATION_PRI, DESTINATION_RED, destinationName, destinationServer, dstStreamName, entryName, hostname, inetAddr, isAdaptiveStreaming, isExternalRedundancy, logger, mImplementation, myMap, password, playbackHostname, port, profile, properties, pushPublishSession, pushPublishStreamDebug, pushPublishType, reconnectWaitTime, sendingPerformance, srcStream, srcStreamName, totalIOPerformance2Last, totalIOPerformanceLast, userName
 - 
Fields inherited from interface com.wowza.wms.pushpublish.model.IPushPublishCONNECTED_STATE_CONNECTED, CONNECTED_STATE_CONNECTING, CONNECTED_STATE_NOT_CONNECTED, CONNECTED_STATE_WAITING, PUSHPUBLISH_TYPE_CUPERTINO, PUSHPUBLISH_TYPE_MPEGDASH, PUSHPUBLISH_TYPE_NOTIFY_PACKET, PUSHPUBLISH_TYPE_RTMP, PUSHPUBLISH_TYPE_RTP, PUSHPUBLISH_TYPE_RTP_BUFFERED, PUSHPUBLISH_TYPE_SANJOSE, PUSHPUBLISH_TYPE_SRT, PUSHPUBLISH_TYPE_UNKNOWN
 
- 
 - 
Constructor SummaryConstructors Constructor Description PushPublishHTTPBase()
 - 
Method SummaryAll Methods Instance Methods Concrete Methods Modifier and Type Method Description StringgetAdaptiveGroupName()intgetMaxSegmentCount()StringgetPlaylistBaseUrl()intgetPlaylistCount()Get the playlist count.PushPublishHTTPPlaylistMapgetPlaylistMap()Get the playlist map.intgetPlaylistTimeout()Get the playlist timeout value.voidinit(IApplicationInstance appInstance, String streamName, IMediaStream stream, java.util.Map<String,String> profileData, java.util.Map<String,String> maps, com.wowza.wms.pushpublish.manager.IPushPublisher pushPublisher, boolean streamDebug)Inits the instance.booleanisInAdaptiveGroup()Is the entry in an adaptive group.booleanisLogDebugManifest()Get the current setting of the HTTP Manifest debug logging This is controlled by the pushPublishHTTPPlayListDebug boolean property in the application.xml and by the http.manifestDebug setting in the pushpublish map filebooleanisPlaylistAcrossSessions()Is the playlist maintained across recurring pushpublish sessions.booleanisRelativePlaylists()voidload(java.util.HashMap<String,String> dataMap)Loads map and profile parametersvoidlogDebugManifest(String methodName, String log)Log the provided log str if the HTTP Manifest logging is enabledvoidsetAdaptiveGroupName(String adaptiveGroup)protected voidsetLiveStreamPacketizer(ILiveStreamPacketizer liveStreamPacketizer)voidsetMaxSegmentCountFromMap(int maxSegmentCountFromMap)voidsetMaxSegmentCountFromPacketizer(int maxSegmentCount)voidsetPlaylistAcrossSessions(boolean playlistAcrossSessions)Set whether the playlist is maintained across recurring pushpublish sessions.voidsetPlaylistBaseUrl(String playlistBaseUrl)voidsetPlaylistCountFromMap(int playlistCountFromMap)Set the playlist count value from the map file.voidsetPlaylistCountFromPacketizer(int playlistCountFromPacketizer)Set the playlist count value from the live stream packetizer.voidsetPlaylistTimeout(int playlistTimeout)Set the playlist timeout value.voidsetRelativePlaylists(boolean relativePlaylists)- 
Methods inherited from class com.wowza.wms.pushpublish.model.PushPublishBaseadd, addIOPerformance2, clearLoggingValues, createPushPublishSession, getAppInstance, getBandwidth, getBaseParams, getContextStr, getDestinationID, getDestinationName, getDestinationServer, getDstStreamName, getEntryName, getHostname, getImplementation, getInetAddr, getMap, getMessagesOutBytes, getMessagesOutCount, getPassword, getPlaybackHostname, getPort, getProfile, getProperties, getPushPublishType, getReconnectWaitTime, getSrcStream, getSrcStreamName, getUserName, getWowzaStreamingEngineVersionStr, incrementMessagesOut, isAdaptiveStreaming, isDebugLog, isExternalRedundancy, logDebug, logError, logError, logError, logInfo, logWarn, resolveHostName, setAdaptiveStreaming, setAdaptiveStreaming, setAppInstance, setDebugLog, setDestinationName, setDestinationServer, setDestinationServer, setDstStreamName, setEntryName, setExternalRedundancy, setExternalRedundancy, setHost, setHostname, setImplementation, setInetAddr, setPassword, setPlaybackHostname, setPort, setPort, setProfile, setReconnectWaitTime, setSrcStream, setSrcStreamName, setStreamName, setUserName, updateLoggingValues, updateUsageTracker
 - 
Methods inherited from class java.lang.Objectclone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 - 
Methods inherited from interface com.wowza.wms.pushpublish.model.IPushPublishconnect, disconnect, getConnectedState, getMessagesAttemptedCount, getMessagesFailedCount, getMessagesRetriedCount, resetConnection
 
- 
 
- 
- 
- 
Field Detail- 
MIN_PLAYLIST_COUNTprotected static final int MIN_PLAYLIST_COUNT The minimum allowable playlist size.- See Also:
- Constant Field Values
 
 - 
playlistCountFromPacketizerprotected int playlistCountFromPacketizer The playlist size used by the associated live stream packetizer. How many segments to put in playlist
 - 
playlistCountFromMapprotected int playlistCountFromMap The playlist size from the map entry.
 - 
maxSegmentCountFromPacketizerprotected int maxSegmentCountFromPacketizer The max segment count used by the associated live stream packetizer. How many segments to hold for requests
 - 
maxSegmentCountFromMapprotected int maxSegmentCountFromMap The max segment count from PushPublishMap.txt. How many segments to hold for requests
 - 
playlistMapprotected PushPublishHTTPPlaylistMap playlistMap The playlist map.
 - 
playlistCrossNameprotected String playlistCrossName The instance-specific name for the playlist, allowing the playlist to be maintained across session restarts.
 - 
playlistNameprotected String playlistName The actual name of playlist file that is to be pushed to the destination (e.g. "playlist.m3u8").
 - 
relativePlaylistsprotected boolean relativePlaylists use only relative URL references in the playlist/manifest. If true baseUrl is ignored.
 - 
playlistBaseUrlprotected String playlistBaseUrl base url to use in playlist/manifest
 - 
httpManifestDebugprotected boolean httpManifestDebug Enables manifest playlist debug logging.
 - 
httpLogManifestsprotected boolean httpLogManifests Enables logging of the manifest itself.
 - 
INDETERMINATE_PLAYLIST_COUNTprotected static final int INDETERMINATE_PLAYLIST_COUNT - See Also:
- Constant Field Values
 
 - 
playlistDurationFromMapprotected long playlistDurationFromMap The playlist duration from the map entry. This value is in seconds. http.playlistDuration
 - 
playlistTimeoutprotected int playlistTimeout The timeout value used to delete orphaned playlists from the vhost.
 - 
playlistAcrossSessionsprotected boolean playlistAcrossSessions Indicates whether instance-specific playlists should be maintained across source stream interruptions and app restarts.
 - 
CACHE_CONTROL_MEDIA_DEFAULTpublic static final Integer CACHE_CONTROL_MEDIA_DEFAULT Cache Control header constants, used in push publish file cache control .e.g Cloud Storage ( S3, Azure, GCS )
 - 
CACHE_CONTROL_FACTORpublic static final Float CACHE_CONTROL_FACTOR 
 - 
CACHE_CONTROL_HEADER_KEYpublic static final String CACHE_CONTROL_HEADER_KEY - See Also:
- Constant Field Values
 
 - 
CACHE_CONTROL_HEADERpublic static final String CACHE_CONTROL_HEADER - See Also:
- Constant Field Values
 
 - 
CACHE_CONTROL_HEADER_NONEpublic static final String CACHE_CONTROL_HEADER_NONE - See Also:
- Constant Field Values
 
 
- 
 - 
Method Detail- 
initpublic void init(IApplicationInstance appInstance, String streamName, IMediaStream stream, java.util.Map<String,String> profileData, java.util.Map<String,String> maps, com.wowza.wms.pushpublish.manager.IPushPublisher pushPublisher, boolean streamDebug) Inits the instance.- Specified by:
- initin interface- IPushPublish
- Overrides:
- initin class- PushPublishBase
- Parameters:
- appInstance- the app instance
- streamName- the source stream name
- maps- the map entry params
- profileData- the profile params
- streamDebug- stream debug flag
 
 - 
setPlaylistCountFromMappublic void setPlaylistCountFromMap(int playlistCountFromMap) Set the playlist count value from the map file.- Parameters:
- playlistCountFromMap- the playlist count
 
 - 
setPlaylistCountFromPacketizerpublic void setPlaylistCountFromPacketizer(int playlistCountFromPacketizer) Set the playlist count value from the live stream packetizer.- Parameters:
- playlistCountFromPacketizer- the playlist count
 
 - 
setMaxSegmentCountFromMappublic void setMaxSegmentCountFromMap(int maxSegmentCountFromMap) 
 - 
setMaxSegmentCountFromPacketizerpublic void setMaxSegmentCountFromPacketizer(int maxSegmentCount) 
 - 
getPlaylistCountpublic int getPlaylistCount() Get the playlist count. The value from the map file is returned if defined, else the packetizer value is returned return the playlist count
 - 
getMaxSegmentCountpublic int getMaxSegmentCount() 
 - 
getPlaylistTimeoutpublic int getPlaylistTimeout() Get the playlist timeout value. return the playlist timeout value
 - 
setPlaylistTimeoutpublic void setPlaylistTimeout(int playlistTimeout) Set the playlist timeout value.- Parameters:
- playlistTimeout- the playlist timeout
 
 - 
isPlaylistAcrossSessionspublic boolean isPlaylistAcrossSessions() Is the playlist maintained across recurring pushpublish sessions. return true if the playlist is maintained across recurring pushpublish sessions
 - 
setPlaylistAcrossSessionspublic void setPlaylistAcrossSessions(boolean playlistAcrossSessions) Set whether the playlist is maintained across recurring pushpublish sessions.- Parameters:
- playlistAcrossSessions- is the playlist maintained across recurring pushpublish sessions
 
 - 
getPlaylistMappublic PushPublishHTTPPlaylistMap getPlaylistMap() Get the playlist map. return the playlist map
 - 
isRelativePlaylistspublic boolean isRelativePlaylists() 
 - 
setRelativePlaylistspublic void setRelativePlaylists(boolean relativePlaylists) 
 - 
getPlaylistBaseUrlpublic String getPlaylistBaseUrl() 
 - 
setPlaylistBaseUrlpublic void setPlaylistBaseUrl(String playlistBaseUrl) 
 - 
getAdaptiveGroupNamepublic String getAdaptiveGroupName() 
 - 
setAdaptiveGroupNamepublic void setAdaptiveGroupName(String adaptiveGroup) 
 - 
isInAdaptiveGrouppublic boolean isInAdaptiveGroup() Is the entry in an adaptive group. return true if the entry is in an adaptive group
 - 
loadpublic void load(java.util.HashMap<String,String> dataMap) Loads map and profile parameters- Overrides:
- loadin class- PushPublishBase
- Parameters:
- dataMap- the data map
 
 - 
isLogDebugManifestpublic boolean isLogDebugManifest() Get the current setting of the HTTP Manifest debug logging This is controlled by the pushPublishHTTPPlayListDebug boolean property in the application.xml and by the http.manifestDebug setting in the pushpublish map file- Returns:
- true if HTTP Mainfest debug logging is enabled
 
 - 
logDebugManifestpublic void logDebugManifest(String methodName, String log)Log the provided log str if the HTTP Manifest logging is enabled- Parameters:
- methodName- name of the class method using the log
- log- string to log if enabled
 
 - 
setLiveStreamPacketizerprotected void setLiveStreamPacketizer(ILiveStreamPacketizer liveStreamPacketizer) 
 
- 
 
-