コード例 #1
0
  private boolean registerAsSoap(String endpoint, Object listener) throws UMOException {
    if (endpoint.startsWith("glue") || endpoint.startsWith("soap") || endpoint.startsWith("axis")) {
      UMOEndpointURI ep = new MuleEndpointURI(endpoint);
      QuickConfigurationBuilder builder = new QuickConfigurationBuilder();

      // get the service name from the URI path
      String serviceName = null;
      if (ep.getPath() != null) {
        String path = ep.getPath();
        if (path.endsWith("/")) {
          path = path.substring(0, path.length() - 1);
        }
        int i = path.lastIndexOf("/");
        if (i > -1) {
          serviceName = path.substring(i + 1);
        }
      } else {
        serviceName = descriptor.getName();
      }
      // now strip off the service name
      String newEndpoint = endpoint;
      int i = newEndpoint.indexOf(serviceName);
      newEndpoint = newEndpoint.substring(0, i - 1);
      builder.registerComponentInstance(listener, serviceName, new MuleEndpointURI(newEndpoint));
      return true;
    } else {
      return false;
    }
  }
コード例 #2
0
 // @java.lang.Override
 public void registerService(UMODescriptor service) throws UMOException {
   String modelName = service.getModelName();
   if (modelName == null) {
     logger.warn("Model name not ser on service, using default: " + UMOModel.DEFAULT_MODEL_NAME);
     modelName = UMOModel.DEFAULT_MODEL_NAME;
     service.setModelName(modelName);
   }
   UMOModel model = lookupModel(modelName);
   if (model == null) {
     // TODO
     throw new IllegalStateException(
         "Service must be associated with an existing model. Not found: " + modelName);
   }
   registerObject(UMODescriptor.class, service.getName(), service);
   model.registerComponent(service);
 }