1mod app;
2mod backend;
3pub mod balancing;
4mod error;
5mod parts_ctx;
6mod pipeline;
7pub mod policy;
8mod proxy;
9mod route;
10pub mod routing;
11
12pub use app::{App, AppBuilder, run};
13pub use error::{
14 ApigateBuildError, ApigateCoreError, ApigateError, ApigateFrameworkError, ApigatePipelineError,
15 BaseUriParseError, default_error_renderer,
16};
17pub use parts_ctx::PartsCtx;
18pub use pipeline::{
19 HookResult, MapResult, PipelineFn, PipelineFuture, PipelineResult, RequestScope,
20};
21pub use route::{DstChunk, RewriteSpec, RewriteTemplate, SrcSeg};
22
23#[derive(Clone, Copy, Debug)]
24pub enum Method {
25 Get,
26 Post,
27 Put,
28 Delete,
29 Patch,
30 Head,
31 Options,
32}
33
34#[derive(Clone, Copy, Debug)]
35pub struct RouteDef {
36 pub method: Method,
37 pub path: &'static str,
38 pub rewrite: RewriteSpec,
39 pub policy: Option<&'static str>,
40 pub pipeline: Option<PipelineFn>,
41}
42
43#[derive(Clone, Copy, Debug)]
44pub struct Routes {
45 pub service: &'static str,
46 pub prefix: &'static str,
47 pub policy: Option<&'static str>,
48 pub routes: &'static [RouteDef],
49}