← All compilation units

Flyology.HTTP.Server.Exchange_Backends

Description

@exclude Internal protocol-engine interface.

Accept_Body

procedure Accept_Body
  (Item  : in out Backend;
   Token : access Flyology.Cancellation.Token)

@exclude

Parameters
Item

Backend state

Token

Cancellation token

Backend

type Backend is limited interface;

@exclude

Begin_Response_Stream

procedure Begin_Response_Stream
  (Item           : in out Backend;
   Status         : Positive;
   Content_Type   : String;
   Content_Length : Body_Size;
   Extra_Headers  : String;
   Close          : Boolean;
   Timeout        : Duration;
   Token          : access Flyology.Cancellation.Token)

@exclude

Parameters
Item

Backend state

Status

Response status

Content_Type

Response media type

Content_Length

Declared representation length

Extra_Headers

Serialized application fields

Close

Ignored HTTP/1.x close policy

Timeout

Operation deadline interval

Token

Cancellation token

Begin_Response_Stream

procedure Begin_Response_Stream
  (Item          : in out Backend;
   Status        : Positive;
   Content_Type  : String;
   Extra_Headers : String;
   Close         : Boolean;
   Timeout       : Duration;
   Token         : access Flyology.Cancellation.Token)

@exclude

Parameters
Item

Backend state

Status

Response status

Content_Type

Response media type

Extra_Headers

Serialized application fields

Close

Ignored HTTP/1.x close policy

Timeout

Operation deadline interval

Token

Cancellation token

Begin_SSE

procedure Begin_SSE
  (Item          : in out Backend;
   Extra_Headers : String;
   Timeout       : Duration;
   Token         : access Flyology.Cancellation.Token)

@exclude

Parameters
Item

Backend state

Extra_Headers

Serialized application fields

Timeout

Operation deadline interval

Token

Cancellation token

Body_Bytes

function Body_Bytes (Item : Backend) return Body_Size

@exclude

Parameters
Item

Backend state

Return value

Request body bytes received

Body_Complete

function Body_Complete (Item : Backend) return Boolean

@exclude

Parameters
Item

Backend state

Return value

True after the complete request body arrives

Buffer_Body

procedure Buffer_Body
  (Item  : in out Backend;
   Value : in out Request;
   Token : access Flyology.Cancellation.Token)

@exclude

Parameters
Item

Backend state

Value

Request receiving retained body bytes

Token

Cancellation token

Discard_Body

procedure Discard_Body
  (Item  : in out Backend;
   Token : access Flyology.Cancellation.Token)

@exclude

Parameters
Item

Backend state

Token

Cancellation token

End_Response_Stream

procedure End_Response_Stream
  (Item    : in out Backend;
   Timeout : Duration;
   Token   : access Flyology.Cancellation.Token)

@exclude

Parameters
Item

Backend state

Timeout

Operation deadline interval

Token

Cancellation token

End_SSE

procedure End_SSE
  (Item    : in out Backend;
   Timeout : Duration;
   Token   : access Flyology.Cancellation.Token)

@exclude

Parameters
Item

Backend state

Timeout

Operation deadline interval

Token

Cancellation token

Mark_Failed

procedure Mark_Failed (Item : in out Backend)

@exclude

Parameters
Item

Backend state

Narrow_Body_Limit

procedure Narrow_Body_Limit
  (Item : in out Backend; Maximum : Body_Size)

@exclude

Parameters
Item

Backend state

Maximum

New request body limit

Narrow_Deadline

procedure Narrow_Deadline
  (Item : in out Backend; Deadline : Ada.Real_Time.Time)

@exclude

Parameters
Item

Backend state

Deadline

Earlier deadline

Read_Body

procedure Read_Body
  (Item     : in out Backend;
   Data     : out Ada.Streams.Stream_Element_Array;
   Last     : out Ada.Streams.Stream_Element_Offset;
   Finished : out Boolean;
   Token    : access Flyology.Cancellation.Token)

@exclude

Parameters
Item

Backend state

Data

Destination buffer

Last

Last byte read

Finished

True at end of stream

Token

Cancellation token

Respond

procedure Respond
  (Item          : in out Backend;
   Status        : Positive;
   Content_Type  : String;
   Payload       : String;
   Extra_Headers : String;
   Close         : Boolean;
   Timeout       : Duration;
   Token         : access Flyology.Cancellation.Token)

@exclude

Parameters
Item

Backend state

Status

Response status

Content_Type

Response media type

Payload

Response body

Extra_Headers

Serialized application fields

Close

Ignored HTTP/1.x close policy

Timeout

Operation deadline interval

Token

Cancellation token

Response_Started

function Response_Started (Item : Backend) return Boolean

@exclude

Parameters
Item

Backend state

Return value

True after response framing starts

Send_Event

procedure Send_Event
  (Item          : in out Backend;
   Data          : String;
   Event         : String;
   Id            : String;
   Retry         : Natural;
   Timeout       : Duration;
   Token         : access Flyology.Cancellation.Token;
   Include_Id    : Boolean;
   Include_Retry : Boolean)

@exclude

Parameters
Item

Backend state

Data

Event data

Event

Event name

Id

Event identifier

Retry

Retry interval

Timeout

Operation deadline interval

Token

Cancellation token

Include_Id

Whether to emit Id

Include_Retry

Whether to emit Retry

Send_SSE_Comment

procedure Send_SSE_Comment
  (Item    : in out Backend;
   Comment : String;
   Timeout : Duration;
   Token   : access Flyology.Cancellation.Token)

@exclude

Parameters
Item

Backend state

Comment

Comment text

Timeout

Operation deadline interval

Token

Cancellation token

Trailer

function Trailer
  (Item       : Backend;
   Name       : String;
   Occurrence : Positive) return String

@exclude

Parameters
Item

Backend state

Name

Trailer field name

Occurrence

One-based physical occurrence

Return value

Trailer field value or an empty string

Trailer_Count

function Trailer_Count (Item : Backend) return Natural

@exclude

Parameters
Item

Backend state

Return value

Physical trailer count

Trailer_Count

function Trailer_Count
  (Item : Backend; Name : String) return Natural

@exclude

Parameters
Item

Backend state

Name

Trailer field name

Return value

Physical occurrence count

Trailer_Name

function Trailer_Name
  (Item : Backend; Index : Positive) return String

@exclude

Parameters
Item

Backend state

Index

One-based physical trailer index

Return value

Trailer field name

Trailer_Value

function Trailer_Value
  (Item : Backend; Index : Positive) return String

@exclude

Parameters
Item

Backend state

Index

One-based physical trailer index

Return value

Trailer field value

Write_Response_Chunk

procedure Write_Response_Chunk
  (Item    : in out Backend;
   Data    : Ada.Streams.Stream_Element_Array;
   Timeout : Duration;
   Token   : access Flyology.Cancellation.Token)

@exclude

Parameters
Item

Backend state

Data

Response bytes

Timeout

Operation deadline interval

Token

Cancellation token

Write_Response_Chunk

procedure Write_Response_Chunk
  (Item    : in out Backend;
   Data    : String;
   Timeout : Duration;
   Token   : access Flyology.Cancellation.Token)

@exclude

Parameters
Item

Backend state

Data

Response bytes

Timeout

Operation deadline interval

Token

Cancellation token