pub mod client;
pub mod codec;
pub mod health;
pub mod interceptor;
pub mod protobuf;
pub mod reflection;
pub mod server;
pub mod service;
pub mod status;
pub mod streaming;
pub mod web;
pub const DEFAULT_MAX_MESSAGE_SIZE: usize = 4 * 1024 * 1024;
pub use client::{
Channel, ChannelBuilder, ChannelConfig, ClientInterceptor, CompressionEncoding, GrpcClient,
MetadataInterceptor, ResponseStream,
};
pub use codec::{
Codec, FrameCompressor, FrameDecompressor, FramedCodec, GrpcCodec, GrpcMessage, IdentityCodec,
};
#[cfg(feature = "compression")]
pub use codec::{gzip_frame_compress, gzip_frame_decompress};
pub use health::{
HealthCheckRequest, HealthCheckResponse, HealthReporter, HealthService, HealthServiceBuilder,
HealthWatchStream, HealthWatcher, ServingStatus,
};
pub use interceptor::{
BearerAuthInterceptor, BearerAuthValidator, FnInterceptor, InterceptorLayer,
LoggingInterceptor, MetadataPropagator, RateLimitInterceptor, TimeoutInterceptor,
TracingInterceptor, auth_bearer_interceptor, auth_validator, fn_interceptor,
logging_interceptor, metadata_propagator, rate_limiter, timeout_interceptor, trace_interceptor,
};
pub use protobuf::{ProstCodec, ProtobufError};
pub use reflection::{
ReflectedMethod, ReflectedService, ReflectionDescribeServiceRequest,
ReflectionDescribeServiceResponse, ReflectionListServicesRequest,
ReflectionListServicesResponse, ReflectionService,
};
pub use server::{
CallContext, CallContextWithCx, Interceptor, Server, ServerBuilder, ServerConfig,
format_grpc_timeout, parse_grpc_timeout,
};
pub use service::{
BidiStreamingMethod, ClientStreamingMethod, MethodDescriptor, NamedService,
ServerStreamingMethod, ServiceDescriptor, ServiceHandler, UnaryMethod,
};
pub use status::{Code, GrpcError, Status};
pub use streaming::{
Bidirectional, ClientStreaming, Metadata, MetadataValue, Request, Response, ServerStreaming,
Streaming, StreamingRequest,
};
pub use web::{
ContentType as WebContentType, TrailerFrame, WebFrame, WebFrameCodec, base64_decode,
base64_encode, decode_trailers, encode_trailers, is_grpc_web_request, is_text_mode,
};