Table of Contents

Class IceFeature

Namespace
IceRpc.Features
Assembly
IceRpc.Ice.dll

Default implementation of IIceFeature.

public sealed class IceFeature : IIceFeature
Inheritance
IceFeature
Implements
Inherited Members

Constructors

IceFeature(IActivator?, IceEncodeOptions?, int, int, int, IIceProxy?, IIceFeature?)

Constructs an Ice feature.

public IceFeature(IActivator? activator = null, IceEncodeOptions? encodeOptions = null, int maxCollectionAllocation = -1, int maxDepth = -1, int maxPayloadSize = -1, IIceProxy? baseProxy = null, IIceFeature? defaultFeature = null)

Parameters

activator IActivator

The activator.

encodeOptions IceEncodeOptions

The encode options.

maxCollectionAllocation int

The maximum collection allocation. Use -1 to get the default value: 8 times maxPayloadSize if set, otherwise the value provided by defaultFeature.

maxDepth int

The maximum depth. Use -1 to get the default value.

maxPayloadSize int

The maximum size of an Ice-encoded payload, in bytes. Use -1 to get the default value.

baseProxy IIceProxy

The base proxy, used when decoding service addresses into proxies.

defaultFeature IIceFeature

A feature that provides default values for all parameters. null is equivalent to Default.

Properties

Activator

Gets the activator to use when decoding Ice-encoded classes and exceptions.

public IActivator? Activator { get; }

Property Value

IActivator

The activator. When null, the decoding of a request or response payload uses the activator injected by the generated code.

BaseProxy

Gets the base proxy used when decoding a service address into a proxy.

public IIceProxy? BaseProxy { get; }

Property Value

IIceProxy

The base proxy.

Default

Gets a IIceFeature with default values for all properties.

public static IIceFeature Default { get; }

Property Value

IIceFeature

EncodeOptions

Gets the options to use when encoding the payload of an outgoing response.

public IceEncodeOptions? EncodeOptions { get; }

Property Value

IceEncodeOptions

The Ice encode options. null is equivalent to Default.

MaxCollectionAllocation

Gets the maximum collection allocation when decoding a payload, in bytes.

public int MaxCollectionAllocation { get; }

Property Value

int

The maximum collection allocation.

MaxDepth

Gets the maximum depth when decoding a class recursively.

public int MaxDepth { get; }

Property Value

int

The maximum depth. Defaults to 100.

MaxPayloadSize

Gets the maximum size of an Ice-encoded payload, in bytes. An Ice-encoded payload corresponds to the encoded arguments of an operation, or the encoded return values of an operation.

public int MaxPayloadSize { get; }

Property Value

int

The maximum size of an Ice-encoded payload, in bytes. Defaults to 1 MB.

Remarks

The payload size does not include the size of any header for this payload, such as the encapsulation header with the ice protocol.