// Path: src/main/java/com/thoughtworks/go/strongauth/handlers/Handlers.java
// public class Handlers {
// 
//     private final Map<String, Handler> handlers;
// 
//     public Handlers(final Map<String, Handler> handlers) {
//         this.handlers = handlers;
//     }
// 
//     public Handler get(String requestName) {
//         if (handlers.containsKey(requestName)) {
//             return handlers.get(requestName);
//         }
//         throw new RuntimeException(format("Handler for request of type: %s is not implemented", requestName));
//     }
// }
// 
// Path: src/main/java/com/thoughtworks/go/strongauth/util/Constants.java
// public class Constants {
//     public static final String PLUGIN_ID = "strongauth";
// }


import com.thoughtworks.go.plugin.api.GoApplicationAccessor;
import com.thoughtworks.go.plugin.api.GoPlugin;
import com.thoughtworks.go.plugin.api.GoPluginIdentifier;
import com.thoughtworks.go.plugin.api.annotation.Extension;
import com.thoughtworks.go.plugin.api.exceptions.UnhandledRequestTypeException;
import com.thoughtworks.go.plugin.api.logging.Logger;
import com.thoughtworks.go.plugin.api.request.GoPluginApiRequest;
import com.thoughtworks.go.plugin.api.response.GoPluginApiResponse;
import com.thoughtworks.go.strongauth.handlers.Handlers;
import com.thoughtworks.go.strongauth.util.Constants;
import static java.util.Arrays.asList;
package com.thoughtworks.go.strongauth;



@Extension
public class StrongAuthPlugin implements GoPlugin {

    public final String pluginId = Constants.PLUGIN_ID;
    private static final Logger LOGGER = Logger.getLoggerFor(StrongAuthPlugin.class);

// Path: src/main/java/com/thoughtworks/go/strongauth/handlers/Handlers.java
// public class Handlers {
// 
//     private final Map<String, Handler> handlers;
// 
//     public Handlers(final Map<String, Handler> handlers) {
//         this.handlers = handlers;
//     }
// 
//     public Handler get(String requestName) {
//         if (handlers.containsKey(requestName)) {
//             return handlers.get(requestName);
//         }
//         throw new RuntimeException(format("Handler for request of type: %s is not implemented", requestName));
//     }
// }
// 
// Path: src/main/java/com/thoughtworks/go/strongauth/util/Constants.java
// public class Constants {
//     public static final String PLUGIN_ID = "strongauth";
// }


// Path: src/main/java/com/thoughtworks/go/strongauth/StrongAuthPlugin.java
import com.thoughtworks.go.plugin.api.GoApplicationAccessor;
import com.thoughtworks.go.plugin.api.GoPlugin;
import com.thoughtworks.go.plugin.api.GoPluginIdentifier;
import com.thoughtworks.go.plugin.api.annotation.Extension;
import com.thoughtworks.go.plugin.api.exceptions.UnhandledRequestTypeException;
import com.thoughtworks.go.plugin.api.logging.Logger;
import com.thoughtworks.go.plugin.api.request.GoPluginApiRequest;
import com.thoughtworks.go.plugin.api.response.GoPluginApiResponse;
import com.thoughtworks.go.strongauth.handlers.Handlers;
import com.thoughtworks.go.strongauth.util.Constants;
import static java.util.Arrays.asList;

package com.thoughtworks.go.strongauth;



@Extension
public class StrongAuthPlugin implements GoPlugin {

    public final String pluginId = Constants.PLUGIN_ID;
    private static final Logger LOGGER = Logger.getLoggerFor(StrongAuthPlugin.class);

    private ComponentFactory componentFactory;