Package com.alu.e3.rate.model

Examples of com.alu.e3.rate.model.GatewayRate


   
    Iterator<Instance> itr = list.iterator();
    while (itr.hasNext()) {
      if (itr.next().getInternalIP().equals(inst.getInternalIP())) {
        itr.remove();
          fireInstanceRemoved(new InstanceEvent(inst));
        return true;
      }
    }
    return false;   
   
View Full Code Here


                 * This is just workaround. The final solution will be provided by OAPEEE-294.
                 */
                if (LOG.isDebugEnabled()) {
                  LOG.debug("MultipartStream used");
                }
                return new MultipartStream(is, contentType);
              } else {
                if (LOG.isDebugEnabled()) {
                  LOG.debug("CachedOutputStream used");
                }
                CachedOutputStream cos = new CachedOutputStream(exchange);
View Full Code Here

  protected Endpoint createEndpoint(String uri, String remaining, Map<String, Object> parameters) throws Exception {
    if(!parameters.containsKey("apiId"))
      throw new CamelException("apiId parameter is missing");
   
    String apiId = getAndRemoveParameter(parameters, "apiId", String.class);
    return new IpWhiteListEndpoint(uri, this, dataManager, apiId);
  }
View Full Code Here

    CanonicalizedIpAddress ip = new CanonicalizedIpAddress(remoteAddr);
    if(this.dataManager.isIpAllowed(api, ip.getIp())) {
      exchange.setProperty(ExchangeConstantKeys.E3_API.toString(), api);   
    }
    else {
      Exception exception = new GatewayException(GatewayExceptionCode.AUTHORIZATION, "Not Authorized from this IP address");
      exchange.setException(exception);     
    }   
  }
View Full Code Here

    Exception exception = exchange.getProperty(Exchange.EXCEPTION_CAUGHT, Exception.class);

    if (exception instanceof GatewayException) {

      GatewayException gatewayException = (GatewayException) exception;

      if (gatewayException.getCode() == GatewayExceptionCode.AUTHORIZATION) {
        String body = "Issue: " + gatewayException.getMessage();
        createHttpErrorResponse(exchange, 401, body);
        isNoteSpecialized = false;

      } else if(gatewayException.getCode() == GatewayExceptionCode.AUTHORIZATION_BASIC) {
        exchange.getOut().setHeader("WWW-Authenticate", "Basic realm=\"Secure Service\"");
        String body = "Issue: " + gatewayException.getMessage();
        createHttpErrorResponse(exchange, 401, body);
        isNoteSpecialized = false;
       
      } else if(gatewayException.getCode() == GatewayExceptionCode.API_NOT_ACTIVATED) {       
        String body = "Issue: " + gatewayException.getMessage();
        createHttpErrorResponse(exchange, 403, body);
        isNoteSpecialized = false;   
       
      } else if(gatewayException.getCode() == GatewayExceptionCode.VALIDATION) {
        String body = "Issue: " + gatewayException.getMessage();
        createHttpErrorResponse(exchange, 400, body);
        isNoteSpecialized = false;
     
      if (gatewayException.getCode() == GatewayExceptionCode.RATEORQUOTA) {
        String body = "Issue: " + gatewayException.getMessage();
        // Based on draft "Additional HTTP Status Codes; draft-nottingham-http-new-status-02"
        // http://tools.ietf.org/html/draft-nottingham-http-new-status-02#page-4
        createHttpErrorResponse(exchange, 429, "Too Many Requests", body);
        isNoteSpecialized = false;
      }
      if (gatewayException.getCode() == GatewayExceptionCode.HTTP_METHOD) {
        String body = "Issue: " + gatewayException.getMessage();
        createHttpErrorResponse(exchange, 405, body);
        isNoteSpecialized = false;
      }
    }
View Full Code Here

    // Get subscriber matching CallDescriptors
    Auth auth;
    try {
      auth = dataManager.getAuthById(subscriberId);
    } catch (InvalidIDException e) {
      throw new GatewayException(GatewayExceptionCode.AUTHORIZATION, e.getMessage() );
    }

    if (auth == null || !auth.getStatus().isActive()) {
      throw new GatewayException(GatewayExceptionCode.AUTHORIZATION, "Authorization status is invalid");
    }

    return   dataManager.getMatchingPolicies(authIdentity.getApi(), auth);

  }
View Full Code Here

  public abstract void process(Exchange exchange) throws Exception;
 
  protected void injectUriAndQueryString(String notifyUrl, Exchange exchange) throws GatewayException {
    String[] parts = CommonTools.splitUrl(notifyUrl);
    if(parts == null)
      throw new GatewayException(GatewayExceptionCode.NOTIFY_URL, "Notification URL is invalid");
     
    exchange.getIn().setHeader(Exchange.HTTP_URI, parts[0]);
    exchange.getIn().setHeader(Exchange.HTTP_QUERY, parts[1]);
  }
View Full Code Here

    HttpServletRequest req = exchange.getIn().getBody(HttpServletRequest.class);
    X509Certificate[] cert = (X509Certificate[]) req.getAttribute("javax.servlet.request.X509Certificate");
   
    if ((cert == null) || (cert.length == 0)) {
      // we don't have a client certificate => stop the request
      throw new GatewayException(GatewayExceptionCode.AUTHORIZATION, "Missing certificate");         
    }
  }
View Full Code Here

    if(allowedHttpMethods==null || allowedHttpMethods.isEmpty())
      return;

    Object methodheader = exchange.getIn().getHeader(Exchange.HTTP_METHOD);
    if(methodheader == null){
      throw new GatewayException(GatewayExceptionCode.HTTP_METHOD, "No HTTP Method");
    }
   
    for(String m : allowedHttpMethods){
      if(m.equals(methodheader.toString().toLowerCase())){
        return;
      }
    }
   
    throw new GatewayException(GatewayExceptionCode.HTTP_METHOD, "Method "+methodheader.toString()+" not allowed");
  }
View Full Code Here

    this.apiId = apiId;
  }

  @Override
  public Producer createProducer() throws Exception {
    return new IpWhiteListProducer(this, dataManager, apiId);
  }
View Full Code Here

TOP

Related Classes of com.alu.e3.rate.model.GatewayRate

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.