Example #1
0
 @Override
 public AddRawServicePhase defineService(
     final Service service, final String path, final ServiceBindingProvider provider) {
   final ServiceBuilder builder = defineService(service, path);
   provider.configureService(builder);
   builder.addService();
   return this;
 }
Example #2
0
 @Override
 public AddServiceFromContextPhase defineServiceFromContext(
     final String ctxName,
     final Class<? extends Service> serviceType,
     final String path,
     final boolean bindPrefix,
     final ContextBasedServiceBindingProvider provider) {
   final Service service = ctx.getBean(ctxName, serviceType);
   final ServiceBuilder builder = new ServiceBuilder(service, path, bindPrefix);
   provider.configureService(builder);
   builder.addService();
   return this;
 }
Example #3
0
 @Override
 public ServiceConfiguration apply(final ServiceId arg0) {
   final Component comp = Components.lookup(arg0.getType());
   try {
     return comp.lookup(arg0.getName());
   } catch (final NoSuchElementException ex1) {
     final ServiceBuilder<? extends ServiceConfiguration> builder =
         ServiceBuilders.lookup(comp.getComponentId());
     try {
       final URI uri = new URI(arg0.getUri());
       ServiceConfiguration config =
           builder.newInstance(
               arg0.getPartition(), arg0.getName(), uri.getHost(), uri.getPort());
       comp.setup(config);
       return config;
     } catch (final URISyntaxException ex) {
       LOG.error(ex, ex);
       throw Exceptions.toUndeclared(ex);
     }
   }
 }
Example #4
0
  /**
   * Creates a new single tiered Service
   *
   * @param workload
   * @param cores
   * @param coreCapacity
   * @param memory
   * @param bandwidth
   * @param storage
   * @param cpuPerWork
   * @param bwPerWork
   * @param cpuOverhead
   * @param tierMin
   * @param tierMax
   * @return
   */
  public static Service singleTierInteractiveService(
      Workload workload,
      int cores,
      int coreCapacity,
      int memory,
      int bandwidth,
      long storage,
      double cpuPerWork,
      double bwPerWork,
      double cpuOverhead,
      int tierMin,
      int tierMax) {

    InteractiveApplicationTier appTier =
        new InteractiveApplicationTier(memory, storage, cpuPerWork, bwPerWork, cpuOverhead);
    appTier.setLoadBalancer(new EqualShareLoadBalancer());
    VMDescription vmDescription =
        new VMDescription(cores, coreCapacity, memory, bandwidth, storage, appTier);

    ServiceBuilder builder =
        new ServiceBuilder().workload(workload).tier(appTier, vmDescription, tierMin, tierMax);

    return builder.build();
  }