Class PushPublishHTTPCupertinoGoogleHandler
- Object
- 
- com.wowza.wms.pushpublish.model.PushPublishBase
- 
- com.wowza.wms.pushpublish.model.PushPublishHTTPBase
- 
- com.wowza.wms.pushpublish.protocol.cupertino.PushPublishHTTPCupertino
- 
- com.wowza.wms.pushpublish.protocol.cupertino.PushPublishHTTPCupertinoGoogleHandler
 
 
 
 
- 
- All Implemented Interfaces:
- IPushPublish,- IPushPublishHTTPGroupMember,- IPushPublishHTTPOutputBuilder,- IPushPublishHTTPCupertino
 
 public class PushPublishHTTPCupertinoGoogleHandler extends PushPublishHTTPCupertino 
- 
- 
Field SummaryFields Modifier and Type Field Description protected StringbucketNamestatic StringBUCKETVARstatic StringCOMMANDPATHDELstatic StringCOMMANDPATHPOSTprotected intconnectionTimeoutstatic StringDEFAULTGCEHOSTstatic intDEFAULTGCEPORTprotected booleandeleteSentChunksprotected static StringdestinationPathprotected static StringdestinationURLPrefixprotected booleanfakePostsstatic StringFILENAMEVARprotected booleanhttpWriterDebugprotected booleanisPlaybackSSLprotected booleanisSendSSLprotected static StringLINE_FEEDprotected static StringplaybackDomainprotected static StringplaybackURLPrefixprotected Stringprojectstatic StringPROJECTQPstatic StringPROJECTQPVARstatic StringPROJECTVARstatic StringQUERYPARAMSprotected intreadWriteTimeoutprotected booleansendToBackupServer- 
Fields inherited from class com.wowza.wms.pushpublish.protocol.cupertino.PushPublishHTTPCupertinoaddEndListOnDisconnect, chunkDurationTarget, CHUNKLISTNAME_AUDIOONLY, CHUNKLISTNAME_AUDIOVIDEO, CHUNKLISTNAME_KEYFRAMEONLY, CHUNKLISTNAME_VIDEOONLY, CHUNKLISTNAMES, keepMediaSegmentDataAfterSending, liveStreamPacketizerCupertino, PLAYLISTNAME, pusher, RENDITION_AUDIOONLY, RENDITION_AUDIOVIDEO, RENDITION_KEYFRAMEONLY, RENDITION_VIDEOONLY, RENDITIONINDEX_AUDIOONLY, RENDITIONINDEX_AUDIOVIDEO, RENDITIONINDEX_COUNT, RENDITIONINDEX_KEYFRAMEONLY, RENDITIONINDEX_VIDEOONLY
 - 
Fields inherited from class com.wowza.wms.pushpublish.model.PushPublishHTTPBaseCACHE_CONTROL_FACTOR, CACHE_CONTROL_HEADER, CACHE_CONTROL_HEADER_KEY, CACHE_CONTROL_HEADER_NONE, CACHE_CONTROL_MEDIA_DEFAULT, httpLogManifests, httpManifestDebug, INDETERMINATE_PLAYLIST_COUNT, maxSegmentCountFromMap, maxSegmentCountFromPacketizer, MIN_PLAYLIST_COUNT, playlistAcrossSessions, playlistBaseUrl, playlistCountFromMap, playlistCountFromPacketizer, playlistCrossName, playlistDurationFromMap, playlistMap, playlistName, playlistTimeout, relativePlaylists
 - 
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
 - 
Fields inherited from interface com.wowza.wms.pushpublish.model.IPushPublishHTTPOutputBuilderPUSHER_ERROR_LIVEPACKETIZER_NOT_CONFIGURED, PUSHER_ERROR_RENDITIONS_MISCONFIGURED
 
- 
 - 
Constructor SummaryConstructors Constructor Description PushPublishHTTPCupertinoGoogleHandler()
 - 
Method SummaryAll Methods Instance Methods Concrete Methods Modifier and Type Method Description voidconnect()intdeleteMediaSegment(MediaSegmentModel mediaSegment)Deletes the media (chunk) at the destination URI.intgetChunkDurationTarget(ILiveStreamPacketizer liveStreamPacketizer)StringgetContextStr()StringgetDestinationDomain()StringgetDestinationPath()StringgetDestionationLogData()Get a JSON formatted string of data that represents the destination to include with the connect/disconnect loggingStringgetIngressURL()StringgetPlaybackDomain()StringgetPlaybackPath()StringgetPlaybackURL()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.booleanisSendToBackupServer()Is this implementation sending to a backup servervoidload(java.util.HashMap<String,String> dataMap)Loads map and profile parametersbooleanoutputClose()Close the destination (if needed).booleanoutputOpen()Open the destination (if needed) in preparation of having one or more items (playlists/media segments) pushed to itvoidresetConnection()intsendGroupMasterPlaylist(String groupName, PlaylistModel masterPlaylist)Sends a group master playlist to the destination.intsendMasterPlaylist(PlaylistModel playlist)Sends the master playlist to the destination.intsendMediaPlaylist(PlaylistModel playlist)Sends the media playlist to the destination.intsendMediaSegment(MediaSegmentModel mediaSegment)Sends the media (chunk) to the destination; media provided as a fragment list.voidsetSendToBackupServer(boolean backup)Setup to send to a backup destinationbooleanupdateGroupMasterPlaylistPlaybackURI(String groupName, PlaylistModel masterPlaylist)Get the group master playlist URI for the given group master playlist file that a player would use to consume the content from the CDN Example: "http://myHost.com/myPath/myGroup/playlist.m3u8"booleanupdateMasterPlaylistPlaybackURI(PlaylistModel playlist)update the master playlist URI for the provided playlist model that a player would use to consume the content from the CDN Example: "http://myHost.com/myPath/myStream/playlist.m3u8" where "playlist.m3u8" is the value given for masterPlaylistFilenamebooleanupdateMediaPlaylistPlaybackURI(PlaylistModel playlist)update/set the media playlist (chunklist) URI for the provided media playlist file that a player would use to consume the content from the CDN Example: "http://myHost.com/myPath/myStream/chunklist.m3u8" where "chunklist.m3u8" is the value given for mediaPlaylistFilenamebooleanupdateMediaSegmentPlaybackURI(MediaSegmentModel mediaSegment)set the media URI for the given media (chunk) file that a player would use to consume the content from the CDN Example: "http://myHost.com/myPath/myStream/media_1.ts" where "media_1.ts" is the value given for mediaFilename- 
Methods inherited from class com.wowza.wms.pushpublish.protocol.cupertino.PushPublishHTTPCupertinoadaptiveGroupPlaylistNeedsUpdating, addTagToPlaylist, addTagToPlaylist, createGroupPlaylist, createMasterPlaylist, createMediaPlaylist, createMediaSegmentModel, createOutputItem, createTag, disconnect, disconnect, error, getConnectedState, getGroupPlaylistRenditionDescription, getLastChunkId, getLiveStreamPacketizerName, getMediaPlaylistPlaybackURL, getMessagesAttemptedCount, getMessagesFailedCount, getMessagesRetriedCount, getPacketizerLock, getPlaylistCount, getPlaylistProperties, getRandomSessionStr, getRenditionsStr, isGroupReady, isInRedundancyPair, outputSend, printPlaylist, resetNewPacketizer, sendGroupPlaylist, setLiveStreamPacketizer, setRenditionsStr, writeTagToString
 - 
Methods inherited from class com.wowza.wms.pushpublish.model.PushPublishHTTPBasegetAdaptiveGroupName, getMaxSegmentCount, getPlaylistBaseUrl, getPlaylistMap, getPlaylistTimeout, isInAdaptiveGroup, isLogDebugManifest, isPlaylistAcrossSessions, isRelativePlaylists, logDebugManifest, setAdaptiveGroupName, setMaxSegmentCountFromMap, setMaxSegmentCountFromPacketizer, setPlaylistAcrossSessions, setPlaylistBaseUrl, setPlaylistCountFromMap, setPlaylistCountFromPacketizer, setPlaylistTimeout, setRelativePlaylists
 - 
Methods inherited from class com.wowza.wms.pushpublish.model.PushPublishBaseadd, addIOPerformance2, clearLoggingValues, createPushPublishSession, getAppInstance, getBandwidth, getBaseParams, 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.IPushPublishHTTPGroupMembergetAdaptiveGroupName, isInAdaptiveGroup, isLogDebugManifest
 - 
Methods inherited from interface com.wowza.wms.pushpublish.model.IPushPublishHTTPOutputBuildergetAppInstance, getDstStreamName, getSrcStreamName, isDebugLog
 
- 
 
- 
- 
- 
Field Detail- 
destinationURLPrefixprotected static final String destinationURLPrefix - See Also:
- Constant Field Values
 
 - 
playbackURLPrefixprotected static final String playbackURLPrefix - See Also:
- Constant Field Values
 
 - 
playbackDomainprotected static final String playbackDomain - See Also:
- Constant Field Values
 
 - 
destinationPathprotected static final String destinationPath - See Also:
- Constant Field Values
 
 - 
DEFAULTGCEHOSTpublic static final String DEFAULTGCEHOST - See Also:
- Constant Field Values
 
 - 
DEFAULTGCEPORTpublic static final int DEFAULTGCEPORT - See Also:
- Constant Field Values
 
 - 
BUCKETVARpublic static final String BUCKETVAR - See Also:
- Constant Field Values
 
 - 
COMMANDPATHPOSTpublic static final String COMMANDPATHPOST - See Also:
- Constant Field Values
 
 - 
COMMANDPATHDELpublic static final String COMMANDPATHDEL - See Also:
- Constant Field Values
 
 - 
FILENAMEVARpublic static final String FILENAMEVAR - See Also:
- Constant Field Values
 
 - 
PROJECTVARpublic static final String PROJECTVAR - See Also:
- Constant Field Values
 
 - 
PROJECTQPVARpublic static final String PROJECTQPVAR - See Also:
- Constant Field Values
 
 - 
PROJECTQPpublic static final String PROJECTQP - See Also:
- Constant Field Values
 
 - 
QUERYPARAMSpublic static final String QUERYPARAMS - See Also:
- Constant Field Values
 
 - 
projectprotected String project 
 - 
bucketNameprotected String bucketName 
 - 
LINE_FEEDprotected static final String LINE_FEED - See Also:
- Constant Field Values
 
 - 
sendToBackupServerprotected boolean sendToBackupServer 
 - 
httpWriterDebugprotected boolean httpWriterDebug 
 - 
deleteSentChunksprotected boolean deleteSentChunks 
 - 
fakePostsprotected boolean fakePosts 
 - 
isSendSSLprotected boolean isSendSSL 
 - 
isPlaybackSSLprotected boolean isPlaybackSSL 
 - 
connectionTimeoutprotected int connectionTimeout 
 - 
readWriteTimeoutprotected int readWriteTimeout 
 
- 
 - 
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) Description copied from class:PushPublishHTTPBaseInits the instance.- Specified by:
- initin interface- IPushPublish
- Overrides:
- initin class- PushPublishHTTPCupertino
- Parameters:
- appInstance- the app instance
- streamName- the source stream name
- profileData- the profile params
- maps- the map entry params
- streamDebug- stream debug flag
 
 - 
loadpublic void load(java.util.HashMap<String,String> dataMap) Description copied from class:PushPublishHTTPBaseLoads map and profile parameters- Overrides:
- loadin class- PushPublishHTTPCupertino
- Parameters:
- dataMap- the data map
 
 - 
outputOpenpublic boolean outputOpen() Description copied from interface:IPushPublishHTTPCupertinoOpen the destination (if needed) in preparation of having one or more items (playlists/media segments) pushed to it- Returns:
- true if the destination was opened
 
 - 
outputClosepublic boolean outputClose() Description copied from interface:IPushPublishHTTPCupertinoClose the destination (if needed). All items (playlist/media segments) have been pushed to bring the destination up to date with the current state- Returns:
- true if the destination was closed
 
 - 
connectpublic void connect() - Specified by:
- connectin interface- IPushPublish
- Overrides:
- connectin class- PushPublishHTTPCupertino
 
 - 
resetConnectionpublic void resetConnection() - Specified by:
- resetConnectionin interface- IPushPublish
- Overrides:
- resetConnectionin class- PushPublishHTTPCupertino
 
 - 
getChunkDurationTargetpublic int getChunkDurationTarget(ILiveStreamPacketizer liveStreamPacketizer) - Specified by:
- getChunkDurationTargetin interface- IPushPublishHTTPOutputBuilder
- Overrides:
- getChunkDurationTargetin class- PushPublishHTTPCupertino
 
 - 
isSendToBackupServerpublic boolean isSendToBackupServer() Description copied from interface:IPushPublishHTTPCupertinoIs this implementation sending to a backup server- Returns:
- true if sending to a backup server
 
 - 
setSendToBackupServerpublic void setSendToBackupServer(boolean backup) Description copied from interface:IPushPublishHTTPCupertinoSetup to send to a backup destination
 - 
updateGroupMasterPlaylistPlaybackURIpublic boolean updateGroupMasterPlaylistPlaybackURI(String groupName, PlaylistModel masterPlaylist)Description copied from interface:IPushPublishHTTPCupertinoGet the group master playlist URI for the given group master playlist file that a player would use to consume the content from the CDN Example: "http://myHost.com/myPath/myGroup/playlist.m3u8"- Parameters:
- groupName- group name
- masterPlaylist- master group playlist
- Returns:
- true if the uri was updated
 
 - 
updateMasterPlaylistPlaybackURIpublic boolean updateMasterPlaylistPlaybackURI(PlaylistModel playlist) Description copied from interface:IPushPublishHTTPCupertinoupdate the master playlist URI for the provided playlist model that a player would use to consume the content from the CDN Example: "http://myHost.com/myPath/myStream/playlist.m3u8" where "playlist.m3u8" is the value given for masterPlaylistFilename- Parameters:
- playlist- the master playlist model to update the URI in
- Returns:
- true if the URI was updated
 
 - 
updateMediaPlaylistPlaybackURIpublic boolean updateMediaPlaylistPlaybackURI(PlaylistModel playlist) Description copied from interface:IPushPublishHTTPCupertinoupdate/set the media playlist (chunklist) URI for the provided media playlist file that a player would use to consume the content from the CDN Example: "http://myHost.com/myPath/myStream/chunklist.m3u8" where "chunklist.m3u8" is the value given for mediaPlaylistFilename- Parameters:
- playlist- to update the uri in
- Returns:
- true if the playlist uri was updated
 
 - 
updateMediaSegmentPlaybackURIpublic boolean updateMediaSegmentPlaybackURI(MediaSegmentModel mediaSegment) Description copied from interface:IPushPublishHTTPCupertinoset the media URI for the given media (chunk) file that a player would use to consume the content from the CDN Example: "http://myHost.com/myPath/myStream/media_1.ts" where "media_1.ts" is the value given for mediaFilename- Parameters:
- mediaSegment- to update the uri of
- Returns:
- true if the uri was updated
 
 - 
sendGroupMasterPlaylistpublic int sendGroupMasterPlaylist(String groupName, PlaylistModel masterPlaylist)Description copied from interface:IPushPublishHTTPCupertinoSends a group master playlist to the destination.- Parameters:
- groupName- the group name
- masterPlaylist- the group master playlist model
- Returns:
- number of bytes sent to output
 
 - 
sendMasterPlaylistpublic int sendMasterPlaylist(PlaylistModel playlist) Description copied from interface:IPushPublishHTTPCupertinoSends the master playlist to the destination.- Parameters:
- playlist- the master playlist model
- Returns:
- number of bytes sent to output (less than zero implies the implementation does not support, 0 is a failure, > 0 is success)
 
 - 
sendMediaPlaylistpublic int sendMediaPlaylist(PlaylistModel playlist) Description copied from interface:IPushPublishHTTPCupertinoSends the media playlist to the destination.- Parameters:
- playlist- the media playlist model
- Returns:
- number of bytes sent to output (less than zero implies the implementation does not support, 0 is a failure, > 0 is success)
 
 - 
sendMediaSegmentpublic int sendMediaSegment(MediaSegmentModel mediaSegment) Description copied from interface:IPushPublishHTTPCupertinoSends the media (chunk) to the destination; media provided as a fragment list.- Parameters:
- mediaSegment- the media file in fragment list form
- Returns:
- number of bytes sent to output (less than zero implies the implementation does not support, 0 is a failure, > 0 is success)
 
 - 
deleteMediaSegmentpublic int deleteMediaSegment(MediaSegmentModel mediaSegment) Description copied from interface:IPushPublishHTTPCupertinoDeletes the media (chunk) at the destination URI. Default implementation assumes the URI uses the HTTP schema and deletes the media using the WSE HTTPByteWriter. Implementations not using the HTTP schema or not wanting to use the default HTTPByteWriter should override the default method.- Parameters:
- mediaSegment- the media destination URI
- Returns:
- number of bytes sent if successful (less than zero implies the implementation does not support, 0 is a failure, > 0 is success)
 
 - 
getDestionationLogDatapublic String getDestionationLogData() Description copied from class:PushPublishHTTPCupertinoGet a JSON formatted string of data that represents the destination to include with the connect/disconnect logging- Specified by:
- getDestionationLogDatain interface- IPushPublishHTTPCupertino
- Specified by:
- getDestionationLogDatain class- PushPublishHTTPCupertino
- Returns:
- JSON formatted string representation
 
 - 
getDestinationDomainpublic String getDestinationDomain() 
 - 
getDestinationPathpublic String getDestinationPath() 
 - 
getContextStrpublic String getContextStr() - Specified by:
- getContextStrin interface- IPushPublish
- Overrides:
- getContextStrin class- PushPublishHTTPCupertino
 
 - 
getIngressURLpublic String getIngressURL() 
 - 
getPlaybackURLpublic String getPlaybackURL() 
 - 
getPlaybackDomainpublic String getPlaybackDomain() 
 - 
getPlaybackPathpublic String getPlaybackPath() 
 
- 
 
-