org.apache.camel.model.rest.RestDefinition.post()方法的使用及代码示例

x33g5p2x  于2022-01-29 转载在 其他  
字(11.0k)|赞(0)|评价(0)|浏览(74)

本文整理了Java中org.apache.camel.model.rest.RestDefinition.post方法的一些代码示例,展示了RestDefinition.post的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。RestDefinition.post方法的具体详情如下:
包路径:org.apache.camel.model.rest.RestDefinition
类名称:RestDefinition
方法名:post

RestDefinition.post介绍

暂无

代码示例

代码示例来源:origin: org.openksavi.sponge/sponge-rest-api-server

protected <I extends SpongeRequest, O extends SpongeResponse> void createOperation(RestDefinition restDefinition, String operation,
    String operationDescription, Class<I> requestClass, String requestDescription, Class<O> responseClass,
    String responseDescription, BiFunction<I, Exchange, O> operationHandler) {
  restDefinition.post(operation).description(operationDescription).type(requestClass).outType(responseClass).param().name("body")
      .type(body).description(requestDescription).endParam().responseMessage().code(200).message(responseDescription)
      .endResponseMessage().route().id("sponge-" + operation).process(exchange -> {
        String requestBody = exchange.getIn().getBody(String.class);
        if (logger.isDebugEnabled()) {
          logger.debug("REST API {} request: {}", operation, RestApiUtils.obfuscatePassword(requestBody));
        }
        try {
          setupResponse(operation, exchange,
              operationHandler.apply(getObjectMapper().readValue(requestBody, requestClass), exchange));
        } catch (Throwable processingException) {
          logger.info("REST API error", processingException);
          try {
            setupResponse(operation, exchange, apiService.createGenericErrorResponse(processingException, exchange));
          } catch (Throwable e) {
            logger.error("REST API send error response failure", e);
            throw e;
          }
        }
      }).endRest();
}

代码示例来源:origin: camelinaction/camelinaction2

@Override
  public void configure() throws Exception {
    // see the application.properties file for setup of the rest configuration

    // rest services under the orders context-path
    rest("/orders")
      // need to specify the POJO types the binding is using (otherwise json binding defaults to Map based)
      .get("{id}").outType(Order.class)
        .to("bean:orderService?method=getOrder(${header.id})")
        // need to specify the POJO types the binding is using (otherwise json binding defaults to Map based)
      .post().type(Order.class)
        .to("bean:orderService?method=createOrder")
        // need to specify the POJO types the binding is using (otherwise json binding defaults to Map based)
      .put().type(Order.class)
        .to("bean:orderService?method=updateOrder")
      .delete("{id}")
        .to("bean:orderService?method=cancelOrder(${header.id})");
  }
}

代码示例来源:origin: camelinaction/camelinaction2

@Override
  public void configure() throws Exception {

    // configure rest-dsl
    restConfiguration()
      // to use spark-rest component and run on port 8080
      .component("spark-rest").port(8080);

    // rest services under the orders context-path
    rest("/orders")
      .get("{id}")
        .to("bean:orderService?method=getOrder(${header.id})")
      .post()
        .to("bean:orderService?method=createOrder")
      .put()
        .to("bean:orderService?method=updateOrder")
      .delete("{id}")
        .to("bean:orderService?method=cancelOrder(${header.id})");
  }
}

代码示例来源:origin: org.openksavi.sponge/sponge-rest-api

.post("/version").description("Get the Sponge version").type(RestGetVersionRequest.class).outType(RestGetVersionResponse.class)
  .param().name("body").type(body).description("Get Sponge version request").endParam()
  .responseMessage().code(200).message("The Sponge version response").endResponseMessage()
    .setBody(exchange -> apiService.getVersion(exchange.getIn().getBody(RestGetVersionRequest.class), exchange))
  .endRest()
.post("/login").description("Login").type(RestLoginRequest.class).outType(RestLoginResponse.class)
  .param().name("body").type(body).description("Login request").endParam()
  .responseMessage().code(200).message("The login response").endResponseMessage()
    .setBody(exchange -> apiService.login(exchange.getIn().getBody(RestLoginRequest.class), exchange))
  .endRest()
.post("/logout").description("Logout").type(RestLogoutRequest.class).outType(RestLogoutResponse.class)
  .param().name("body").type(body).description("Logout request").endParam()
  .responseMessage().code(200).message("The logout response").endResponseMessage()
    .setBody(exchange -> apiService.logout(exchange.getIn().getBody(RestLogoutRequest.class), exchange))
  .endRest()
.post("/knowledgeBases").description("Get knowledge bases").type(RestGetKnowledgeBasesRequest.class)
    .outType(RestGetKnowledgeBasesResponse.class)
  .param().name("body").type(body).description("Get knowledge bases request").endParam()
    .setBody(exchange -> apiService.getKnowledgeBases(exchange.getIn().getBody(RestGetKnowledgeBasesRequest.class), exchange))
  .endRest()
.post("/actions").description("Get actions").type(RestGetActionsRequest.class).outType(RestGetActionsResponse.class)
  .param().name("body").type(body).description("Get actions request").endParam()
  .responseMessage().code(200).message("The get actions response").endResponseMessage()
    .setBody(exchange -> apiService.getActions(exchange.getIn().getBody(RestGetActionsRequest.class), exchange))

代码示例来源:origin: camelinaction/camelinaction2

@Override
  public void configure() throws Exception {
    // configure rest-dsl
    restConfiguration()
      // to use jetty component and run on port 8080
      .component("jetty").port(8080)
      // use a smaller thread pool in jetty as we do not have so high demand yet
      .componentProperty("minThreads", "1")
      .componentProperty("maxThreads", "16")
      // to setup jetty to use the security handler
      .endpointProperty("handlers", "#securityHandler");

    // rest services under the orders context-path
    rest("/orders")
      .get("{id}")
        .to("bean:orderService?method=getOrder(${header.id})")
      .post()
        .to("bean:orderService?method=createOrder")
      .put()
        .to("bean:orderService?method=updateOrder")
      .delete("{id}")
        .to("bean:orderService?method=cancelOrder(${header.id})");
  }
}

代码示例来源:origin: camelinaction/camelinaction2

@Override
  public void configure() throws Exception {
    // configure rest-dsl
    restConfiguration()
      // to use jetty component and run on port 8080
      .component("jetty").port(8080)
      // use a smaller thread pool in jetty as we do not have so high demand yet
      .componentProperty("minThreads", "1")
      .componentProperty("maxThreads", "16")
      // to setup jetty to use the security handler
      .endpointProperty("handlers", "#securityHandler");

    // rest services under the orders context-path
    rest("/orders")
      .get("{id}")
        .to("bean:orderService?method=getOrder(${header.id})")
      .post()
        .to("bean:orderService?method=createOrder")
      .put()
        .to("bean:orderService?method=updateOrder")
      .delete("{id}")
        .to("bean:orderService?method=cancelOrder(${header.id})");
  }
}

代码示例来源:origin: camelinaction/camelinaction2

@Override
  public void configure() throws Exception {

    // configure rest-dsl
    restConfiguration()
      // to use spark-rest component and run on port 8080
      .component("spark-rest").port(8080)
      // and enable json binding mode
      .bindingMode(RestBindingMode.json)
      // lets enable pretty printing json responses
      .dataFormatProperty("prettyPrint", "true");

    // rest services under the orders context-path
    rest("/orders")
      // need to specify the POJO types the binding is using (otherwise json binding defaults to Map based)
      .get("{id}").outType(Order.class)
        .to("bean:orderService?method=getOrder(${header.id})")
        // need to specify the POJO types the binding is using (otherwise json binding defaults to Map based)
      .post().type(Order.class)
        .to("bean:orderService?method=createOrder")
        // need to specify the POJO types the binding is using (otherwise json binding defaults to Map based)
      .put().type(Order.class)
        .to("bean:orderService?method=updateOrder")
      .delete("{id}")
        .to("bean:orderService?method=cancelOrder(${header.id})");
  }
}

代码示例来源:origin: camelinaction/camelinaction2

@Override
  public void configure() throws Exception {

    // use jetty for rest service
    restConfiguration("jetty").port("{{port}}").contextPath("api")
        // turn on json binding
        .bindingMode(RestBindingMode.json)
        // turn off binding error on empty beans
        .dataFormatProperty("disableFeatures", "FAIL_ON_EMPTY_BEANS")
        // enable swagger api documentation
        .apiContextPath("api-doc")
        .enableCORS(true);

    // define the rest service
    rest("/cart").consumes("application/json").produces("application/json")
      // get returns List<CartDto>
      .get().outType(CartDto[].class).description("Returns the items currently in the shopping cart")
        .to("bean:cart?method=getItems")
      // get accepts CartDto
      .post().type(CartDto.class).description("Adds the item to the shopping cart")
        .to("bean:cart?method=addItem")
      .delete().description("Removes the item from the shopping cart")
        .param().name("itemId").description("Id of item to remove").endParam()
        .to("bean:cart?method=removeItem");
  }
}

代码示例来源:origin: camelinaction/camelinaction2

@Override
  public void configure() throws Exception {

    // use jetty for rest service
    restConfiguration("jetty").port("{{port}}").contextPath("api")
        // turn on json binding
        .bindingMode(RestBindingMode.json)
        // turn off binding error on empty beans
        .dataFormatProperty("disableFeatures", "FAIL_ON_EMPTY_BEANS")
        // enable swagger api documentation
        .apiContextPath("api-doc")
        .enableCORS(true);

    // define the rest service
    rest("/cart").consumes("application/json").produces("application/json")
      // get returns List<CartDto>
      .get().outTypeList(CartDto.class).description("Returns the items currently in the shopping cart")
        .to("bean:cart?method=getItems")
      // get accepts CartDto
      .post().type(CartDto.class).description("Adds the item to the shopping cart")
        .to("bean:cart?method=addItem")
      .delete().description("Removes the item from the shopping cart")
        .param().name("itemId").description("Id of item to remove").endParam()
        .to("bean:cart?method=removeItem");
  }
}

代码示例来源:origin: camelinaction/camelinaction2

.to("bean:orderService?method=getOrder(${header.id})")
.post().type(Order.class)
  .to("bean:orderService?method=createOrder")

代码示例来源:origin: RedHatWorkshops/dayinthelife-integration

.get("/phone/{id}")
  .to("direct:phone")
.post("/add")
  .to("direct:addlocation")

代码示例来源:origin: camelinaction/camelinaction2

.to("bean:orderService?method=getOrder(${header.id})")
.post().type(Order.class).outType(String.class)
  .description("Service to submit a new order")
  .responseMessage()

代码示例来源:origin: RedHatWorkshops/dayinthelife-integration

.post("/automate/{apiToken}/{userid}/{openshiftappurl}").description("Automatically setup your 3scale APIs")
  .responseMessage().code(200).message("Your API is secured!").endResponseMessage()
  .to("direct:threescalesetup")

相关文章