// Path: src/main/java/com/thoughtworks/go/strongauth/authentication/AuthenticationRequest.java
// @Value
// public class AuthenticationRequest {
//     private final String username;
//     private final String password;
// }
// 
// Path: src/main/java/com/thoughtworks/go/strongauth/util/Constants.java
// public class Constants {
//     public static final String PLUGIN_ID = "strongauth";
// }


import com.google.common.base.Optional;
import com.google.gson.*;
import com.thoughtworks.go.plugin.api.logging.Logger;
import com.thoughtworks.go.plugin.api.request.GoPluginApiRequest;
import com.thoughtworks.go.strongauth.authentication.AuthenticationRequest;
import com.thoughtworks.go.strongauth.util.Constants;
import java.io.IOException;
import java.lang.reflect.Type;
import static java.lang.String.format;
package com.thoughtworks.go.strongauth.wire;




public class GoAuthenticationRequestDecoder {

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

    private static Gson gson = new GsonBuilder().registerTypeAdapter(
// Path: src/main/java/com/thoughtworks/go/strongauth/authentication/AuthenticationRequest.java
// @Value
// public class AuthenticationRequest {
//     private final String username;
//     private final String password;
// }
// 
// 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/wire/GoAuthenticationRequestDecoder.java
import com.google.common.base.Optional;
import com.google.gson.*;
import com.thoughtworks.go.plugin.api.logging.Logger;
import com.thoughtworks.go.plugin.api.request.GoPluginApiRequest;
import com.thoughtworks.go.strongauth.authentication.AuthenticationRequest;
import com.thoughtworks.go.strongauth.util.Constants;
import java.io.IOException;
import java.lang.reflect.Type;
import static java.lang.String.format;

package com.thoughtworks.go.strongauth.wire;




public class GoAuthenticationRequestDecoder {

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

    private static Gson gson = new GsonBuilder().registerTypeAdapter(
            AuthenticationRequest.class, new JsonDeserializer<AuthenticationRequest>() {