connect method

Future<Client> connect()

Implementation

Future<Client> connect() async {
  //    print("Criando plataform");
  final platform = Platform(
      _url + 'portal/api/rest/oauth/request_token',
      _url + 'portal/api/rest/oauth/authorize',
      // resource owner authorization
      _url + 'portal/api/rest/oauth/access_token',
      // token credentials request
      _signatureMethod // signature method
      );

  // print("Precisa gerar o token?");

  bool gerarToken = false;
  if (credentials == null) {
    gerarToken = true;
  } else {
    final timeout = DateTime.now().millisecondsSinceEpoch - credentials!.timestamp_gerate!;
    gerarToken = (timeout > time_to_live);
  }
  // print(gerarToken);

  if (gerarToken) {
    //    print("Criando Authorization");
    // create Authorization object with client credentials and platform definition
    var auth = Authorization(_clientCredentials, platform, _httpClient);

    //    print("Criando Request para token com usuaário e senha");

    AuthorizationResponse? res = null;

    res = await auth.requestTemporaryCredentials('oob');

    final int code = await requestAuthenticate(res);

    res = await auth.requestTokenCredentials(res.credentials, "");

    _credentials = res.credentials;
  }

  // print("user token: " + credentials!.token!);
  // print("user token secret: " + credentials!.tokenSecret!);

  return Client(platform.signatureMethod, _clientCredentials, credentials!);
}