// Path: vertx-guice-examples/launcher/src/main/java/com/intapp/vertx/guice/examples/launcher/business/Dependency.java
// public interface Dependency {
//     String getGreetingMessage();
// }


import com.intapp.vertx.guice.examples.launcher.business.Dependency;
import com.google.common.base.Preconditions;
import com.google.inject.Inject;
import io.vertx.core.AbstractVerticle;
import io.vertx.core.Vertx;
package com.intapp.vertx.guice.examples.launcher;




/**
 * Implements verticle to show dependency injection in action.
 * The following dependencies are injected:
 * 1) Vertx instance which bindings are configured in {@link com.intapp.vertx.guice.VertxModule}
 * 2) Application specific dependency
 */
public class MainVerticle extends AbstractVerticle{
    private final Dependency dependency;
    private final Vertx vertx;

    @Inject
    public MainVerticle(final Vertx vertx, final Dependency dependency) {
        this.dependency = Preconditions.checkNotNull(dependency);
// Path: vertx-guice-examples/launcher/src/main/java/com/intapp/vertx/guice/examples/launcher/business/Dependency.java
// public interface Dependency {
//     String getGreetingMessage();
// }


// Path: vertx-guice-examples/launcher/src/main/java/com/intapp/vertx/guice/examples/launcher/MainVerticle.java
import com.intapp.vertx.guice.examples.launcher.business.Dependency;
import com.google.common.base.Preconditions;
import com.google.inject.Inject;
import io.vertx.core.AbstractVerticle;
import io.vertx.core.Vertx;

package com.intapp.vertx.guice.examples.launcher;




/**
 * Implements verticle to show dependency injection in action.
 * The following dependencies are injected:
 * 1) Vertx instance which bindings are configured in {@link com.intapp.vertx.guice.VertxModule}
 * 2) Application specific dependency
 */
public class MainVerticle extends AbstractVerticle{
    private final Dependency dependency;
    private final Vertx vertx;

    @Inject
    public MainVerticle(final Vertx vertx, final Dependency dependency) {
        this.dependency = Preconditions.checkNotNull(dependency);
        this.vertx = Preconditions.checkNotNull(vertx);