protected void configure()

in vagrant/src/main/java/org/jclouds/vagrant/config/VagrantComputeServiceContextModule.java [60:93]


   protected void configure() {
      super.configure();
      bind(new TypeLiteral<ComputeServiceAdapter<VagrantNode, Hardware, Image, Location>>() {
      }).to(VagrantComputeServiceAdapter.class);
      bind(new TypeLiteral<Function<VagrantNode, NodeMetadata>>() {
      }).to(MachineToNodeMetadata.class);
      bind(new TypeLiteral<Function<Box, Image>>() {
      }).to(BoxToImage.class);
      bind(new TypeLiteral<Supplier<? extends Map<String, Hardware>>>() {
      }).to(VagrantHardwareSupplier.class).in(Singleton.class);
      bind(new TypeLiteral<Function<Collection<Box>, Collection<Box>>>() {
      }).to(OutdatedBoxesFilter.class);
      bind(new TypeLiteral<Function<Hardware, Hardware>>() {
      }).to(this.<Hardware>castIdentityFunction());
      bind(new TypeLiteral<Function<Location, Location>>() {
      }).to(this.<Location>castIdentityFunction());
      bind(new TypeLiteral<Function<Image, Image>>() {
      }).to(this.<Image>castIdentityFunction());
      bind(new TypeLiteral<Supplier<Collection<Image>>>() {
      }).to(new TypeLiteral<ImageSupplier<Box>>() {});
      bind(new TypeLiteral<Function<String, Image>>() {
      }).to(new TypeLiteral<ImageSupplier<Box>>() {});
      bind(new TypeLiteral<Supplier<Collection<VagrantNode>>>() {
      }).to(VagrantExistingMachines.class);
      install(new FactoryModuleBuilder()
            .implement(VagrantApiFacade.class, VagrantCliFacade.class)
            .build(VagrantApiFacade.Factory.class));
      install(new FactoryModuleBuilder()
            .implement(new TypeLiteral<VagrantBoxApiFacade<Box>>() {}, VagrantCliFacade.class)
            .build(new TypeLiteral<VagrantBoxApiFacade.Factory<Box>>() {}));
      bind(PopulateDefaultLoginCredentialsForImageStrategy.class).to(VagrantDefaultImageCredentials.class);
      bind(TemplateBuilderImpl.class).to(ArbitraryCpuRamTemplateBuilderImpl.class);
      bind(CommandIOListener.class).to(VagrantWireLogger.class).in(Singleton.class);
   }