C# 클래스 PeerCastStation.HTTP.HTTPOutputStream

HTTPで視聴出力をするクラスです
상속: PeerCastStation.Core.OutputStreamBase
파일 보기 프로젝트 열기: niwakazoider/peercaststation

공개 메소드들

메소드 설명
GetConnectionInfo ( ) : ConnectionInfo
HTTPOutputStream ( PeerCastStation.Core.PeerCast peercast, Stream input_stream, Stream output_stream, EndPoint remote_endpoint, AccessControlInfo access_control, Channel channel, HTTPRequest request ) : System

元になるストリーム、チャンネル、リクエストからHTTPOutputStreamを初期化します

ToString ( ) : string

보호된 메소드들

메소드 설명
CreateResponseHeader ( ) : string

HTTPのレスポンスヘッダを作成して取得します

GetBodyType ( ) : BodyType

リクエストと所属するチャンネルの有無から出力すべき内容を取得します

GetUpstreamRate ( ) : int
OnIdle ( ) : void
OnStarted ( ) : void

ストリームにレスポンスを出力します

OnStopped ( ) : void
OnWaitChannelCompleted ( ) : void
OnWriteResponseBodyCompleted ( ) : void
OnWriteResponseHeaderCompleted ( ) : void
WaitChannel ( ) : void

チャンネルのContentTypeが取得できるか10秒たつまで待ちます。

WritePlayList ( ) : void

ストリームにプレイリストを出力します

WriteResponseBody ( ) : void

ストリームにHTTPレスポンスのボディ部分を出力します

WriteResponseHeader ( ) : void

ストリームにHTTPレスポンスヘッダを出力します

비공개 메소드들

메소드 설명
OnContentChanged ( object sender, EventArgs args ) : void
SetState ( System.Action state ) : void

메소드 상세

CreateResponseHeader() 보호된 메소드

HTTPのレスポンスヘッダを作成して取得します
protected CreateResponseHeader ( ) : string
리턴 string

GetBodyType() 보호된 메소드

リクエストと所属するチャンネルの有無から出力すべき内容を取得します
protected GetBodyType ( ) : BodyType
리턴 BodyType

GetConnectionInfo() 공개 메소드

public GetConnectionInfo ( ) : ConnectionInfo
리턴 PeerCastStation.Core.ConnectionInfo

GetUpstreamRate() 보호된 메소드

protected GetUpstreamRate ( ) : int
리턴 int

HTTPOutputStream() 공개 메소드

元になるストリーム、チャンネル、リクエストからHTTPOutputStreamを初期化します
public HTTPOutputStream ( PeerCastStation.Core.PeerCast peercast, Stream input_stream, Stream output_stream, EndPoint remote_endpoint, AccessControlInfo access_control, Channel channel, HTTPRequest request ) : System
peercast PeerCastStation.Core.PeerCast 所属するPeerCast
input_stream Stream 元になる受信ストリーム
output_stream Stream 元になる送信ストリーム
remote_endpoint System.Net.EndPoint 接続先のアドレス
access_control PeerCastStation.Core.AccessControlInfo 接続可否および認証の情報
channel Channel 所属するチャンネル。無い場合はnull
request HTTPRequest クライアントからのリクエスト
리턴 System

OnIdle() 보호된 메소드

protected OnIdle ( ) : void
리턴 void

OnStarted() 보호된 메소드

ストリームにレスポンスを出力します
protected OnStarted ( ) : void
리턴 void

OnStopped() 보호된 메소드

protected OnStopped ( ) : void
리턴 void

OnWaitChannelCompleted() 보호된 메소드

protected OnWaitChannelCompleted ( ) : void
리턴 void

OnWriteResponseBodyCompleted() 보호된 메소드

protected OnWriteResponseBodyCompleted ( ) : void
리턴 void

OnWriteResponseHeaderCompleted() 보호된 메소드

protected OnWriteResponseHeaderCompleted ( ) : void
리턴 void

ToString() 공개 메소드

public ToString ( ) : string
리턴 string

WaitChannel() 보호된 메소드

チャンネルのContentTypeが取得できるか10秒たつまで待ちます。
protected WaitChannel ( ) : void
리턴 void

WritePlayList() 보호된 메소드

ストリームにプレイリストを出力します
protected WritePlayList ( ) : void
리턴 void

WriteResponseBody() 보호된 메소드

ストリームにHTTPレスポンスのボディ部分を出力します
protected WriteResponseBody ( ) : void
리턴 void

WriteResponseHeader() 보호된 메소드

ストリームにHTTPレスポンスヘッダを出力します
protected WriteResponseHeader ( ) : void
리턴 void