api

package
v1.0.11 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 17, 2024 License: MIT Imports: 26 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Connect

func Connect(authToken *string) (*ConnectModel, *ErrorModel)

Connect Construtor da fábrica ApiConnect.

func ConnectToGraphQLServer added in v1.0.5

func ConnectToGraphQLServer(url string) (*websocket.Conn, error)

func E

func E(message interface{}, err string, stackTrace *string)

func ReceiveMessages added in v1.0.5

func ReceiveMessages(conn *websocket.Conn, next func(payload json.RawMessage))

func Subscribe added in v1.0.5

func Subscribe(conn *websocket.Conn, subscription string) error

Types

type AclAuthorizeResponse added in v1.0.8

type AclAuthorizeResponse struct {
	Data struct {
		AclAuthorize struct {
			Result struct {
				Code       string `bson:"code,omitempty" json:"code"`
				NonceToken string `bson:"nonceToken,omitempty" json:"nonceToken"`
				State      string `bson:"state,omitempty" json:"state"`
			} `bson:"result,omitempty" json:"result"`
			Error       ErrorModel
			ElapsedTime string
			Success     bool
		}
	}
}

type AclTokenResponse added in v1.0.8

type AclTokenResponse struct {
	Data struct {
		AclToken struct {
			Result struct {
				AccessToken  string `bson:"accessToken,omitempty" json:"accessToken"`
				ExpiresIn    string `bson:"expiresIn,omitempty" json:"expiresIn"`
				RefreshToken string `bson:"refreshToken,omitempty" json:"refreshToken"`
				TokenType    string `bson:"tokenType,omitempty" json:"tokenType"`
			} `bson:"result,omitempty" json:"result"`
			Error       ErrorModel
			ElapsedTime string
			Success     bool
		}
	}
}

type ConnectModel

type ConnectModel struct {
	TokenAccessClient    TokenAccessClientModel
	TokenAuthorizeClient TokenAuthorizeClientModel
	// contains filtered or unexported fields
}

func (*ConnectModel) Mutation

func (a *ConnectModel) Mutation(params string, variables map[string]interface{}) ResponseModel

Mutation Realiza uma mutação GraphQL.

func (*ConnectModel) Query

func (a *ConnectModel) Query(params string, variables map[string]interface{}) ResponseModel

Query Realiza uma consulta GraphQL.

type ConnectionModel

type ConnectionModel struct {
	GraphQLSchema graphql.Schema
	ServerUri     string
	Token         string
}

func Connection

func Connection(token string, serverUri string) (*ConnectionModel, error)

func (*ConnectionModel) Mutation

func (c *ConnectionModel) Mutation(params string, variables map[string]interface{}) ResponseModel

func (*ConnectionModel) Query

func (c *ConnectionModel) Query(params string, variables map[string]interface{}) ResponseModel

type EndpointModel

type EndpointModel struct {
	Success     bool
	Error       *ErrorModel
	Result      interface{}
	ElapsedTime string
}

func Endpoint

func Endpoint(value interface{}) EndpointModel

func (EndpointModel) IsValid

func (e EndpointModel) IsValid() bool

func (EndpointModel) ThrowException

func (e EndpointModel) ThrowException()

func (EndpointModel) ToString

func (e EndpointModel) ToString() string

type ErrorModel

type ErrorModel struct {
	// Data e hora em que o erro ocorreu, no formato ISO8601.
	CreatedAt string `json:"createdAt"`

	// Lista de mensagens de erro.
	Messages []string `json:"messages"`

	// Nome do módulo onde ocorreu o erro.
	// Mutation: módulo de mutação.
	// Query: módulo de consulta.
	Module string `json:"module"`

	// Caminho do campo ou recurso onde ocorreu o erro.
	// AclAuthorize: endpoint de autorização de acesso.
	Path string `json:"path"`

	// Tipo do erro, usado para classificar e identificar a natureza do erro.
	// GRAPHQL_VALIDATION_FAILED: Erro de validação GraphQL.
	Code string `json:"code"`

	// Variável adicional fornecida, geralmente usada para fornecer informações adicionais sobre o erro.
	Variables interface{} `json:"variables"`
}

ErrorModel A struct ApiError é usada para representar e lidar com erros da API.

func ApiError

func ApiError(messages []string, module string, path string, code string, createdAt time.Time, variables interface{}) ErrorModel

ApiError Construtor de inicialização de campo.

func (ErrorModel) HasError

func (e ErrorModel) HasError() bool

func (ErrorModel) ToString

func (e ErrorModel) ToString() string

ToString Retorna uma representação de string da instância ApiError.

type ParamsModel

type ParamsModel struct {
	Module string
	Path   string
	Errors []string
	// contains filtered or unexported fields
}

func Params

func Params(queryString string) ParamsModel

func (*ParamsModel) IsValid

func (m *ParamsModel) IsValid() *ErrorModel

IsValid Verifica se a string de consulta é válida

func (ParamsModel) ToString

func (p ParamsModel) ToString() string

type QueryResultModel

type QueryResultModel struct {
	Errors    []string   // Lista de erros retornados pela API, se houver.
	Timestamp *time.Time // Timestamp do resultado da query.
	Code      string     // Código do resultado da query.
}

A struct ApiQueryResult é usada para representar o resultado de uma query da API.

func QueryResult

func QueryResult(errorMessage string) QueryResultModel

Construtor de inicialização de campo.

type ResponseModel

type ResponseModel struct {
	Success bool
	Errors  []ErrorModel
	Data    interface{}
	Body    []byte
}

func Dao

func Dao(graphQL string, variables map[string]interface{}) ResponseModel

func DaoMatrix added in v1.0.11

func DaoMatrix(graphQL string, variables map[string]interface{}) ResponseModel

func (ResponseModel) Endpoint

func (r ResponseModel) Endpoint(response interface{})

func (ResponseModel) EndpointToMap added in v1.0.8

func (r ResponseModel) EndpointToMap(name any) map[string]interface{}

func (ResponseModel) IsValid

func (r ResponseModel) IsValid() bool

func (ResponseModel) ThrowException

func (r ResponseModel) ThrowException()

func (ResponseModel) ToString

func (r ResponseModel) ToString() string

type SecurityModel

type SecurityModel struct{}

SecurityModel ApiSecurity fornece métodos para realizar operações de criptografia e geração de valores aleatórios.

func Security

func Security() SecurityModel

func (*SecurityModel) Base64URLEncode

func (s *SecurityModel) Base64URLEncode(str string) string

Base64URLEncode base64URLEncode codifica uma string em base64URL.

func (*SecurityModel) Decrypt

func (s *SecurityModel) Decrypt(value string, password string) (string, error)

decrypt descriptografa uma string criptografada usando AES com a senha fornecida.

func (*SecurityModel) DecryptWithBase64

func (s *SecurityModel) DecryptWithBase64(ciphertext string, password string) (string, error)

decrypt descriptografa uma string criptografada usando AES com a senha fornecida.

func (*SecurityModel) EncodeMD5

func (s *SecurityModel) EncodeMD5(value string) string

EncodeMD5 encodeMD5 codifica uma string usando MD5.

func (*SecurityModel) EncodeSha1

func (s *SecurityModel) EncodeSha1(value string) string

EncodeSha1 encodeSha1 codifica uma string usando SHA-1.

func (*SecurityModel) EncodeSha256

func (s *SecurityModel) EncodeSha256(value string) string

EncodeSha256 encodeSha256 codifica uma string usando SHA-256.

func (*SecurityModel) Encrypt

func (s *SecurityModel) Encrypt(value string, password string) (string, error)

encrypt criptografa uma string usando AES com a senha fornecida.

func (*SecurityModel) EncryptWithBase64

func (s *SecurityModel) EncryptWithBase64(value string, password string) (string, error)

encrypt criptografa uma string usando AES com a senha fornecida.

func (*SecurityModel) RandomBytes

func (s *SecurityModel) RandomBytes(length int) string

RandomBytes randomBytes gera uma string aleatória de bytes com o tamanho especificado.

func (*SecurityModel) RandomLetters

func (s *SecurityModel) RandomLetters(length int) string

RandomLetters randomLetters gera uma string aleatória de letras minúsculas com o tamanho especificado.

func (*SecurityModel) RandomNumbers

func (s *SecurityModel) RandomNumbers(length int) string

RandomNumbers randomNumbers gera uma string aleatória de números com o tamanho especificado.

func (*SecurityModel) Uid

func (s *SecurityModel) Uid() string

uid gera um UID no formato "XXXX-XXXX-XXXX-XXXX".

func (*SecurityModel) UidSha1

func (s *SecurityModel) UidSha1(value string) string

UidSha1 uidSha1 gera um UID no formato "XXXX-XXXX-XXXX-XXXX" com base em uma string de entrada, codificando-a usando SHA-1 e convertendo-a em maiúsculas.

type StorageModel

type StorageModel struct {
	// contains filtered or unexported fields
}

StorageModel é responsável por fornecer uma interface para armazenar e recuperar dados usando o BoltDB e criptografando as informações armazenadas.

func Storage

func Storage() *StorageModel

Storage retorna a instância única de StorageModel.

func (*StorageModel) Add

func (s *StorageModel) Add(key string, value string)

Add adiciona um valor no armazenamento. Recebe uma chave (key) e um valor (value) como argumentos. O valor é criptografado antes de ser armazenado.

func (*StorageModel) Close

func (s *StorageModel) Close() error

Close libera recursos e define o armazenamento como nulo.

func (*StorageModel) Read

func (s *StorageModel) Read(key string) string

Read lê um valor do armazenamento. Recebe uma chave (key) como argumento e retorna o valor descriptografado correspondente. Retorna um erro se a chave não for encontrada.

func (*StorageModel) Remove

func (s *StorageModel) Remove(key string)

Remove remove um valor do armazenamento. Recebe uma chave (key) como argumento e remove o valor correspondente do armazenamento.

type TokenAccessClientModel

type TokenAccessClientModel struct {
	// contains filtered or unexported fields
}

func TokenAccessClient

func TokenAccessClient(apiClientAuthorize TokenAuthorizeClientModel) TokenAccessClientModel

func (*TokenAccessClientModel) IsValid

func (a *TokenAccessClientModel) IsValid() (bool, error)

func (*TokenAccessClientModel) Token

func (a *TokenAccessClientModel) Token() string

type TokenAccessUserModel

type TokenAccessUserModel struct {
	// contains filtered or unexported fields
}

func TokenAccessUser

func TokenAccessUser(apiUserAuthorize TokenAuthorizeUserModel) *TokenAccessUserModel

func (*TokenAccessUserModel) Token

func (a *TokenAccessUserModel) Token() bool

type TokenAuthorizeClientModel

type TokenAuthorizeClientModel struct {
	// contains filtered or unexported fields
}

func TokenAuthorizeClient

func TokenAuthorizeClient(token *string) TokenAuthorizeClientModel

func (*TokenAuthorizeClientModel) AclAuthorize

func (t *TokenAuthorizeClientModel) AclAuthorize() *ErrorModel

func (*TokenAuthorizeClientModel) IsValid

func (t *TokenAuthorizeClientModel) IsValid() bool

func (*TokenAuthorizeClientModel) Ready

func (t *TokenAuthorizeClientModel) Ready() bool

type TokenAuthorizeUserModel

type TokenAuthorizeUserModel struct {
	// contains filtered or unexported fields
}

func TokenAuthorizeUser

func TokenAuthorizeUser(token string) TokenAuthorizeUserModel

func (*TokenAuthorizeUserModel) Authorize

func (t *TokenAuthorizeUserModel) Authorize() bool

func (*TokenAuthorizeUserModel) IsValid

func (t *TokenAuthorizeUserModel) IsValid() bool

type UserModel

type UserModel struct {
	// contains filtered or unexported fields
}

UserModel Classe User representa um usuário da API e gerencia a autenticação e autorização desse usuário.

func User

func User(config interface{}) *UserModel

func (*UserModel) AccessToken

func (au *UserModel) AccessToken(value string)

AccessToken Método para salvar o token de acesso do usuário.

func (*UserModel) AuthToken

func (au *UserModel) AuthToken(value string)

AuthToken Método para salvar o token de autenticação do usuário.

func (*UserModel) Authorize

func (au *UserModel) Authorize()

Authorize Método para validar o token de autorização e obter o token de acesso e autenticação.

func (*UserModel) ClientId

func (au *UserModel) ClientId() string

func (*UserModel) GetAccessToken

func (au *UserModel) GetAccessToken() string

GetAccessToken Método para obter o token de acesso do usuário.

func (*UserModel) GetAuthToken

func (au *UserModel) GetAuthToken() string

GetAuthToken Método para obter o token de autenticação do usuário.

func (*UserModel) GetRefreshToken

func (au *UserModel) GetRefreshToken() string

func (*UserModel) GetServerUri

func (au *UserModel) GetServerUri() string

GetServerUri Método para obter o URI do servidor.

func (*UserModel) RefreshToken

func (au *UserModel) RefreshToken(value string)

func (*UserModel) ServerUri

func (au *UserModel) ServerUri(value string)

ServerUri Método para salvar o URI do servidor.

func (*UserModel) SetClientId

func (au *UserModel) SetClientId(id string)

func (*UserModel) Storage

func (au *UserModel) Storage() *StorageModel

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL