Class MediaTransportConfigurationAmazonS3

Object
com.wowza.wms.transport.media.MediaTransportConfigurationBase
com.wowza.wms.transport.media.MediaTransportConfigurationAmazonS3
All Implemented Interfaces:
IMediaTransportProviderConfiguration

public class MediaTransportConfigurationAmazonS3 extends com.wowza.wms.transport.media.MediaTransportConfigurationBase
This is a base configuration object for AmazonS3 for the MediaTransport System //Example use
//Create a main transport object

MediaTransport transport = new MediaTransport();

//Create an Amazon Transport Provider
MediaTransportProviderAmazonS3 amazonTransport = new MediaTransportProviderAmazonS3();

//Create an Amazon Configuration Object
MediaTransportConfigurationAmazonS3 amazonConfig = new MediaTransportConfigurationAmazonS3();

//Configure the Amazon object with the required parameters
amazonConfig.setAttributeString(MediaTransportConfigurationAmazonS3.AMZ_CONFIG_BUCKET, "mybucketName");
amazonConfig.setAttributeString(MediaTransportConfigurationAmazonS3.AMZ_CONFIG_REGION, "bucketRegionName");
amazonConfig.setAttributeBoolean(MediaTransportConfigurationAmazonS3.AMZ_CONFIG_REGION_ENABLED, true);
amazonConfig.setAttributeString(MediaTransportConfigurationAmazonS3.AMZ_CONFIG_ACCESSID, "myAmazonAccessKey");
amazonConfig.setAttributeString(MediaTransportConfigurationAmazonS3.AMZ_CONFIG_SECRETACCESSKEY, "myAmazonSecretKey");

//Add the configuration item to the provider
amazonTransport.setTransportProviderConfiguration(amazonConfig);

//Set the type of processing to occur, the default is ASYNC, set to SYNC
//Async will use a thread pool to handle transports, SYNC will block and do them in the order
//they are provided
amazonTransport.setTransportProcessType(IMediaTransportProvider.TRANSPORT_PROVIDER_PROCESS_SYNC);

//Initialize the provider
amazonTransport.init();

//Add the transport provided to the media transport system
transport.addTransportProvider(amazonTransport);

//You can add multiple transport providers

//To push a data block into the transport system the following example should be followed

//Lets assume you have a byte array, say from loading a file into this array.
byte[] fileBytes = getBytesFromFile(uploadFile);

//Create a data object and set up various settings.
MediaTransportDataObject transportDataObject = new MediaTransportDataObject();
transportDataObject.setPath("/"+filename);
transportDataObject.setContentType("video/mp4");
transportDataObject.setData(fileBytes);
transportDataObject.setCommand("PUT");

//Put the object into the transport system
trasnport.addTransportDataObject(transportDataObject);

// There are several listeners you can use to determine if the transport provider was added
// and the return status of the object presented to the system.