C# Class PeerCastStation.HTTP.HTTPOutputStreamFactory

HTTPで視聴出力をするHTTPOutputStreamを作成するクラスです
Inheritance: PeerCastStation.Core.OutputStreamFactoryBase
Exibir arquivo Open project: niwakazoider/peercaststation Class Usage Examples

Public Methods

Method Description
Create ( Stream input_stream, Stream output_stream, EndPoint remote_endpoint, AccessControlInfo access_control, System.Guid channel_id, byte header ) : IOutputStream

出力ストリームを作成します

HTTPOutputStreamFactory ( PeerCastStation.Core.PeerCast peercast ) : System

ファクトリオブジェクトを初期化します

ParseChannelID ( byte header ) : Guid?

クライアントからのリクエストを解析しチャンネルIDを取得します

HTTPのGETまたはHEADリクエストでパスが /stream/チャンネルID /pls/チャンネルID のいずれかで始まる場合のみチャンネルIDを抽出します

Private Methods

Method Description
CreateTrackerUri ( System.Guid channel_id, Uri request_uri ) : Uri
ParseEndPoint ( string text ) : string
ParseRequest ( byte header ) : HTTPRequest

HTTPリクエストを解析します

Method Details

Create() public method

出力ストリームを作成します
public Create ( Stream input_stream, Stream output_stream, EndPoint remote_endpoint, AccessControlInfo access_control, System.Guid channel_id, byte header ) : IOutputStream
input_stream Stream 元になる受信ストリーム
output_stream Stream 元になる送信ストリーム
remote_endpoint System.Net.EndPoint 接続先。無ければnull
access_control PeerCastStation.Core.AccessControlInfo
channel_id System.Guid 所属するチャンネルのチャンネルID
header byte クライアントからのリクエスト
return IOutputStream

HTTPOutputStreamFactory() public method

ファクトリオブジェクトを初期化します
public HTTPOutputStreamFactory ( PeerCastStation.Core.PeerCast peercast ) : System
peercast PeerCastStation.Core.PeerCast 所属するPeerCastオブジェクト
return System

ParseChannelID() public method

クライアントからのリクエストを解析しチャンネルIDを取得します
HTTPのGETまたはHEADリクエストでパスが /stream/チャンネルID /pls/チャンネルID のいずれかで始まる場合のみチャンネルIDを抽出します
public ParseChannelID ( byte header ) : Guid?
header byte クライアントからのリクエスト
return Guid?