// Path: app/src/main/java/io/upnext/beaconcontrol/app/s2s/http/request/TokenRequest.java
// public class TokenRequest extends BaseTokenRequest {
// 
//     @JsonProperty("email")
//     public String email;
// 
//     @JsonProperty("password")
//     public String password;
// 
//     public TokenRequest(String clientId, String clientSecret, GrantType grantType, String email, String password) {
//         super(clientId, clientSecret, grantType);
//         this.email = email;
//         this.password = password;
//     }
// }
// 
// Path: app/src/main/java/io/upnext/beaconcontrol/app/s2s/http/response/TokenResponse.java
// public class TokenResponse {
// 
//     public enum Scope {
//         s2s_api
//     }
// 
//     @JsonProperty("access_token")
//     public String accessToken;
// 
//     @JsonProperty("token_type")
//     public String tokenType;
// 
//     @JsonProperty("expires_in")
//     public long expiresIn;
// 
//     @JsonProperty("refresh_token")
//     public String refreshToken;
// 
//     @JsonProperty("scope")
//     public Scope scope;
// 
//     @JsonProperty("created_at")
//     public long createdAt;
// }


import io.upnext.beaconcontrol.app.s2s.http.request.TokenRequest;
import io.upnext.beaconcontrol.app.s2s.http.response.TokenResponse;
import retrofit2.Call;
/*
 * Copyright (c) 2016, Upnext Technologies Sp. z o.o.
 * All rights reserved.
 *
 * This source code is licensed under the BSD 3-Clause License found in the
 * LICENSE.txt file in the root directory of this source tree.
 */

package io.upnext.beaconcontrol.app.s2s.http;


public class BeaconControlOAuthManager {

    private final String email;
    private final String password;
    private final IBeaconControlOAuthService oauthService;
    private final String clientSecret;
    private final String clientId;

// Path: app/src/main/java/io/upnext/beaconcontrol/app/s2s/http/request/TokenRequest.java
// public class TokenRequest extends BaseTokenRequest {
// 
//     @JsonProperty("email")
//     public String email;
// 
//     @JsonProperty("password")
//     public String password;
// 
//     public TokenRequest(String clientId, String clientSecret, GrantType grantType, String email, String password) {
//         super(clientId, clientSecret, grantType);
//         this.email = email;
//         this.password = password;
//     }
// }
// 
// Path: app/src/main/java/io/upnext/beaconcontrol/app/s2s/http/response/TokenResponse.java
// public class TokenResponse {
// 
//     public enum Scope {
//         s2s_api
//     }
// 
//     @JsonProperty("access_token")
//     public String accessToken;
// 
//     @JsonProperty("token_type")
//     public String tokenType;
// 
//     @JsonProperty("expires_in")
//     public long expiresIn;
// 
//     @JsonProperty("refresh_token")
//     public String refreshToken;
// 
//     @JsonProperty("scope")
//     public Scope scope;
// 
//     @JsonProperty("created_at")
//     public long createdAt;
// }


// Path: app/src/main/java/io/upnext/beaconcontrol/app/s2s/http/BeaconControlOAuthManager.java
import io.upnext.beaconcontrol.app.s2s.http.request.TokenRequest;
import io.upnext.beaconcontrol.app.s2s.http.response.TokenResponse;
import retrofit2.Call;

/*
 * Copyright (c) 2016, Upnext Technologies Sp. z o.o.
 * All rights reserved.
 *
 * This source code is licensed under the BSD 3-Clause License found in the
 * LICENSE.txt file in the root directory of this source tree.
 */

package io.upnext.beaconcontrol.app.s2s.http;


public class BeaconControlOAuthManager {

    private final String email;
    private final String password;
    private final IBeaconControlOAuthService oauthService;
    private final String clientSecret;
    private final String clientId;

    public BeaconControlOAuthManager(String email, String password, IBeaconControlOAuthService oauthService, String clientSecret, String clientId) {