{{>example-server-common}}

use jsonwebtoken::{decode, encode, errors::Error as JwtError, Algorithm, DecodingKey, EncodingKey, Header, TokenData, Validation};
use serde::{Deserialize, Serialize};
use swagger::auth::Authorization;
use crate::server_auth;


use {{{externCrateName}}}::{
    Api,
{{#apiInfo}}
  {{#apis}}
    {{#operations}}
      {{#operation}}
    {{{operationId}}}Response,
      {{/operation}}
    {{/operations}}
  {{/apis}}
{{/apiInfo}}
};
use {{{externCrateName}}}::server::MakeService;
use std::error::Error;
use swagger::ApiError;

#[async_trait]
impl<C> Api<C> for Server<C> where C: Has<XSpanIdString> + Send + Sync
{
{{#apiInfo}}
  {{#apis}}
    {{#operations}}
      {{#operation}}
{{>example-server-operation}}
      {{/operation}}
    {{/operations}}
  {{/apis}}
{{/apiInfo}}
}
