Authentication

pt.tecnico.dsi.openstack.keystone.services.Authentication
final class Authentication[F[_]](baseUri: Uri, session: Session)(using evidence$1: Concurrent[F], evidence$2: Client[F]) extends Service[F]

Attributes

Source
Authentication.scala
Graph
Supertypes
class Service[F]
class Object
trait Matchable
class Any

Members list

Type members

Inherited types

type /=>[-T, +R] = PartialFunction[T, R]

Attributes

Inherited from:
Service
Source
Service.scala

Value members

Concrete methods

Get available domain scopes

Get available domain scopes

Attributes

Source
Authentication.scala

Get available project scopes.

Get available project scopes.

Attributes

Source
Authentication.scala
def revoke(token: String): F[Unit]

Revoke token which is immediately not valid, regardless of the expiresAt attribute value.

Revoke token which is immediately not valid, regardless of the expiresAt attribute value.

Attributes

Source
Authentication.scala

Get service catalog.

Get service catalog.

Attributes

Source
Authentication.scala

Get available system scopes

Get available system scopes

Attributes

Source
Authentication.scala
def validate(token: String): F[Boolean]

Validates token. Similar to validateAndShowInformation but no body is returned.

Validates token. Similar to validateAndShowInformation but no body is returned.

Attributes

Source
Authentication.scala

Validates and shows information for token, including its expiration date and authorization scope.

Validates and shows information for token, including its expiration date and authorization scope.

Attributes

Source
Authentication.scala

Inherited methods

protected def defaultOnError[R](request: Request[F], response: Response[F]): F[R]

Attributes

Inherited from:
Service
Source
Service.scala
protected def delete(uri: Uri, extraHeaders: ToRaw*): F[Unit]

An idempotent delete. If NotFound or Gone are returned this method will succeed.

An idempotent delete. If NotFound or Gone are returned this method will succeed.

Value parameters

extraHeaders

extra headers to be used. The authToken header is always added.

uri

the uri to which the request will be made.

Attributes

Inherited from:
Service
Source
Service.scala
protected def expect[R](wrappedAt: Option[String], method: Method, uri: Uri, extraHeaders: ToRaw*)(using evidence$9: Decoder[R]): F[R]

Invokes method on the specified uri without any body. The response will be parsed to an R.

Invokes method on the specified uri without any body. The response will be parsed to an R.

Value parameters

extraHeaders

extra headers to be used. The authToken header is always added.

method

the method to use, eg: GET, POST, etc.

uri

the uri to which the request will be made.

wrappedAt

whether to decode R at the Json root, or at the field at.

Attributes

Inherited from:
Service
Source
Service.scala

Invokes method on the specified uri passing as body value. The response will be parsed to an R.

Invokes method on the specified uri passing as body value. The response will be parsed to an R.

Value parameters

extraHeaders

extra headers to be used. The authToken header is always added.

method

the method to use, eg: GET, POST, etc.

uri

the uri to which the request will be made.

value

the value to send in the body. This value will be json encoded using wrapped.

wrappedAt

whether to encode B and decode R at the Json root, or at the field at.

Attributes

Inherited from:
Service
Source
Service.scala

Invokes method on the specified uri without any body. The response will be parsed to an Option[R].

Invokes method on the specified uri without any body. The response will be parsed to an Option[R].

Value parameters

extraHeaders

extra headers to be used. The authToken header is always added.

method

the method to use, eg: GET, POST, etc.

uri

the uri to which the request will be made.

wrappedAt

whether to decode R at the Json root, or at the field at.

Attributes

Inherited from:
Service
Source
Service.scala

Invokes method on the specified uri passing as body value. The response will be parsed to an Option[R].

Invokes method on the specified uri passing as body value. The response will be parsed to an Option[R].

Value parameters

extraHeaders

extra headers to be used. The authToken header is always added.

method

the method to use, eg: GET, POST, etc.

uri

the uri to which the request will be made.

value

the value to send in the body. This value will be json encoded using wrapped.

wrappedAt

whether to encode B and decode R at the Json root, or at the field at.

Attributes

Inherited from:
Service
Source
Service.scala

Submits request and decodes the response to a Option[R] on success.

Submits request and decodes the response to a Option[R] on success.

Value parameters

request

the request to execute.

wrappedAt

whether to decode R at the Json root, or at the field at.

Attributes

Inherited from:
Service
Source
Service.scala
protected def expectUnwrapped[R](wrappedAt: Option[String], request: Request[F])(using evidence$3: Decoder[R]): F[R]

Submits request and decodes the response to a R on success.

Submits request and decodes the response to a R on success.

Value parameters

request

the request to execute.

wrappedAt

whether to decode R at the Json root, or at the field at.

Attributes

Inherited from:
Service
Source
Service.scala
protected def get[R](wrappedAt: Option[String], uri: Uri, extraHeaders: ToRaw*)(using evidence$11: Decoder[R]): F[R]

Attributes

Inherited from:
Service
Source
Service.scala
protected def getOption[R](wrappedAt: Option[String], uri: Uri, extraHeaders: ToRaw*)(using evidence$12: Decoder[R]): F[Option[R]]

Attributes

Inherited from:
Service
Source
Service.scala
protected def list[R](wrappedAt: String, uri: Uri, extraHeaders: ToRaw*)(using evidence$25: Decoder[R]): F[List[R]]

Invokes a GET request on the specified uri, expecting to receive a list of elements. If the response is paginated all elements will be returned, be careful as this might take a lot of time and memory.

Invokes a GET request on the specified uri, expecting to receive a list of elements. If the response is paginated all elements will be returned, be careful as this might take a lot of time and memory.

Type parameters

R

the type of the elements returned.

Value parameters

extraHeaders

extra headers to be used. The authToken header is always added.

uri

the uri to which the request will be made. Query params related with pagination will be overwritten after the first request.

wrappedAt

the Json object field where R will be decoded from.

Attributes

Inherited from:
Service
Source
Service.scala
protected def patch[V, R](wrappedAt: Option[String], value: V, uri: Uri, extraHeaders: ToRaw*)(using evidence$15: Encoder[V], evidence$16: Decoder[R]): F[R]

Attributes

Inherited from:
Service
Source
Service.scala
protected def post[V, R](wrappedAt: Option[String], value: V, uri: Uri, extraHeaders: ToRaw*)(using evidence$17: Encoder[V], evidence$18: Decoder[R]): F[R]

Attributes

Inherited from:
Service
Source
Service.scala

Attributes

Inherited from:
Service
Source
Service.scala

Attributes

Inherited from:
Service
Source
Service.scala
protected def put[V, R](wrappedAt: Option[String], value: V, uri: Uri, extraHeaders: ToRaw*)(using evidence$13: Encoder[V], evidence$14: Decoder[R]): F[R]

Attributes

Inherited from:
Service
Source
Service.scala
protected def stream[R](wrappedAt: String, uri: Uri, extraHeaders: ToRaw*)(using evidence$24: Decoder[R]): Stream[F, R]

Invokes a GET request on the specified uri, expecting the returned json to be paginated. Automatically fetches more pages if more elements of the stream are consumed.

Invokes a GET request on the specified uri, expecting the returned json to be paginated. Automatically fetches more pages if more elements of the stream are consumed.

Type parameters

R

the type of the elements returned.

Value parameters

extraHeaders

extra headers to be used. The authToken header is always added.

uri

the uri to which the request will be made. Query params related with pagination will be overwritten after the first request.

wrappedAt

the Json object field where R will be decoded from.

Attributes

Inherited from:
{ valnext:Option[Uri]=links.collectFirst[Uri](((x$1:Link)=>(x$1:@unchecked)match{ caseLink("next",uri)=> (`uri₂`:Uri) })) Tuple2.apply[List[Link],Option[Uri]](links,next) })).flatMap[DecodingFailure,Tuple2[Option[Uri],List[R]]](((`x$1₂`:Tuple2[List[Link],Option[Uri]])=>(`x$1₂`:@unchecked)match{ caseTuple2(links,next)=> c.downField(wrappedAt).as[List[R]](decodeList[R](evidence$24)).map[Tuple2[Option[Uri],List[R]]](((objectList:List[R])=>Tuple2.apply[Option[Uri],List[R]](`next₂`,objectList))) }))) Stream.unfoldChunkEval[F,Option[Uri],R](Some.apply[Uri](uri))(((`x$1₃`:Option[Uri])=>`x$1₃`match{ caseSome(uri)=> toFunctorOps[F,Tuple2[Option[Uri],List[R]]](client.expect[Tuple2[Option[Uri],List[R]]](Service.this.dsl.http4sClientSyntaxMethod(GET).apply(`uri₃`,extraHeaders.+:[ToRaw](Service.this.subjectTokenHeader):_*))(Service.this.jsonDecoder[Tuple2[Option[Uri],List[R]]](paginatedDecoder)))(F).map[Option[Tuple2[Chunk[R],Option[Uri]]]](((`x$1₄`:Tuple2[Option[Uri],List[R]])=>`x$1₄`match{ caseTuple2(next,entries)=> Some.apply[Tuple2[Chunk[R],Option[Uri]]](Tuple2.apply[Chunk[R],Option[Uri]](Chunk.iterable[R](entries),`next₃`)) })) caseNone=> F.pure[Option[Tuple2[Chunk[R],Option[Uri]]]](None) })) }">Service
Source
Service.scala
protected def unwrapped[R](at: Option[String])(implicit decoder: Decoder[R]): EntityDecoder[F, R]

Creates a Decoder which will decode the response from Json. When at is None R will be decoded directly from the Json root (the normal implementation for most Json REST APIs). Example:

Creates a Decoder which will decode the response from Json. When at is None R will be decoded directly from the Json root (the normal implementation for most Json REST APIs). Example:

{
  "id": "e4d02828-9cac-4765-bf7f-7e210dac7aba",
  "zones": 500,
  "zone_recordsets": 500
}

When at is a Some(x) R will be decoded from the Json object located in the field x. For R to be correctly parsed in this example at should be Some("quota"):

{
  "quota": {
    "id": "e4d02828-9cac-4765-bf7f-7e210dac7aba",
    "zones": 500,
    "zone_recordsets": 500
  }
}

Value parameters

at

whether to decode R at the Json root, or at the field at.

decoder

the circe decoder capable of converting Json to an R.

Attributes

Inherited from:
Service
Source
Service.scala
protected def wrapped[R](at: Option[String])(implicit encoder: Encoder[R]): EntityEncoder[F, R]

Creates an EntityEncoder which will encode R to a Json. When at is None R will be encoded directly (the normal implementation for most Json REST APIs). Example:

Creates an EntityEncoder which will encode R to a Json. When at is None R will be encoded directly (the normal implementation for most Json REST APIs). Example:

{
  "id": "e4d02828-9cac-4765-bf7f-7e210dac7aba",
  "zones": 500,
  "zone_recordsets": 500
}

When at is a Some(x) R will be encoded inside a Json object with a single field named x. In this example at was set to Some("quota"):

{
  "quota": {
    "id": "e4d02828-9cac-4765-bf7f-7e210dac7aba",
    "zones": 500,
    "zone_recordsets": 500
  }
}

Value parameters

at

whether to encode R at the Json root, or at the field at.

encoder

the circe encoder capable of converting an R to Json.

Attributes

Inherited from:
Service
Source
Service.scala

Concrete fields

override val uri: Uri

The baseUri with the pluraName appended as an extra path element.

The baseUri with the pluraName appended as an extra path element.

Attributes

Source
Authentication.scala

Inherited fields

protected val authToken: AuthToken

Attributes

Inherited from:
Service
Source
Service.scala
protected val dsl: Http4sClientDsl[F]

Attributes

Inherited from:
Service
Source
Service.scala
protected val jsonPrinter: Printer

Attributes

Inherited from:
Service
Source
Service.scala
val name: String

Attributes

Inherited from:
Service
Source
Service.scala

Attributes

Inherited from:
Service
Source
Service.scala

Implicits

Inherited implicits

implicit val F: Concurrent[F]

Attributes

Inherited from:
Service
Source
Service.scala
implicit protected val client: Client[F]

Attributes

Inherited from:
Service
Source
Service.scala
implicit protected def jsonDecoder[A](using evidence$2: Decoder[A]): EntityDecoder[F, A]

Attributes

Inherited from:
Service
Source
Service.scala
implicit protected def jsonEncoder[A](using evidence$1: Encoder[A]): EntityEncoder[F, A]

Attributes

Inherited from:
Service
Source
Service.scala
implicit protected val void: EntityDecoder[F, Unit]

Attributes

Inherited from:
Service
Source
Service.scala