791ebf4f78
This PR contains the work done to implement the `UserAgentMiddleware` middleware that includes user agent information into a header of the requests sent by the `Client` type, as defined in the [Discogs documentation](https://www.discogs.com/developers/#page:home,header:home-general-information). For this purpose, the `CamelCaseValidationRule`, `SemanticVersionValidationRule` and `URLValidationRule` types were implemented and integrated into the existing `ValidateInputUseCase` type. Reviewed-on: #6 Co-authored-by: Javier Cicchelli <javier@rock-n-code.com> Co-committed-by: Javier Cicchelli <javier@rock-n-code.com>
1 line
6.3 KiB
JSON
1 line
6.3 KiB
JSON
{"variants":[{"traits":[{"interfaceLanguage":"swift"}],"paths":["\/documentation\/discogsservice\/authtransport"]}],"topicSections":[{"identifiers":["doc:\/\/DiscogsService\/documentation\/DiscogsService\/AuthTransport\/onHeader","doc:\/\/DiscogsService\/documentation\/DiscogsService\/AuthTransport\/onQuery"],"generated":true,"title":"Enumeration Cases","anchor":"Enumeration-Cases"},{"identifiers":["doc:\/\/DiscogsService\/documentation\/DiscogsService\/AuthTransport\/Equatable-Implementations"],"generated":true,"title":"Default Implementations","anchor":"Default-Implementations"}],"hierarchy":{"paths":[["doc:\/\/DiscogsService\/documentation\/DiscogsService"]]},"relationshipsSections":[{"type":"conformsTo","identifiers":["doc:\/\/DiscogsService\/s12CaseIterableP","doc:\/\/DiscogsService\/SQ","doc:\/\/DiscogsService\/SH","doc:\/\/DiscogsService\/s8SendableP","doc:\/\/DiscogsService\/s16SendableMetatypeP"],"title":"Conforms To","kind":"relationships"}],"kind":"symbol","seeAlsoSections":[{"identifiers":["doc:\/\/DiscogsService\/documentation\/DiscogsService\/AuthMiddleware","doc:\/\/DiscogsService\/documentation\/DiscogsService\/AuthMethod"],"generated":true,"title":"Authentication","anchor":"Authentication"}],"primaryContentSections":[{"declarations":[{"tokens":[{"kind":"keyword","text":"enum"},{"kind":"text","text":" "},{"kind":"identifier","text":"AuthTransport"}],"languages":["swift"],"platforms":["macOS"]}],"kind":"declarations"}],"schemaVersion":{"minor":3,"patch":0,"major":0},"sections":[],"abstract":[{"text":"A representation of the available transport options to send credentials in authenticated requests.","type":"text"}],"identifier":{"url":"doc:\/\/DiscogsService\/documentation\/DiscogsService\/AuthTransport","interfaceLanguage":"swift"},"metadata":{"modules":[{"name":"DiscogsService"}],"role":"symbol","title":"AuthTransport","externalID":"s:14DiscogsService13AuthTransportO","symbolKind":"enum","navigatorTitle":[{"text":"AuthTransport","kind":"identifier"}],"roleHeading":"Enumeration","fragments":[{"kind":"keyword","text":"enum"},{"kind":"text","text":" "},{"kind":"identifier","text":"AuthTransport"}]},"references":{"doc://DiscogsService/documentation/DiscogsService/AuthTransport/onQuery":{"identifier":"doc:\/\/DiscogsService\/documentation\/DiscogsService\/AuthTransport\/onQuery","abstract":[{"text":"Authentication credential are sent in a request as parameters in the query string.","type":"text"}],"title":"AuthTransport.onQuery","url":"\/documentation\/discogsservice\/authtransport\/onquery","kind":"symbol","fragments":[{"kind":"keyword","text":"case"},{"kind":"text","text":" "},{"kind":"identifier","text":"onQuery"}],"type":"topic","role":"symbol"},"doc://DiscogsService/documentation/DiscogsService/AuthTransport/Equatable-Implementations":{"role":"collectionGroup","title":"Equatable Implementations","kind":"article","type":"topic","abstract":[],"url":"\/documentation\/discogsservice\/authtransport\/equatable-implementations","identifier":"doc:\/\/DiscogsService\/documentation\/DiscogsService\/AuthTransport\/Equatable-Implementations"},"doc://DiscogsService/s16SendableMetatypeP":{"type":"unresolvable","identifier":"doc:\/\/DiscogsService\/s16SendableMetatypeP","title":"Swift.SendableMetatype"},"doc://DiscogsService/documentation/DiscogsService/AuthTransport":{"url":"\/documentation\/discogsservice\/authtransport","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"text":"AuthTransport","kind":"identifier"}],"navigatorTitle":[{"text":"AuthTransport","kind":"identifier"}],"abstract":[{"type":"text","text":"A representation of the available transport options to send credentials in authenticated requests."}],"title":"AuthTransport","identifier":"doc:\/\/DiscogsService\/documentation\/DiscogsService\/AuthTransport","type":"topic","kind":"symbol","role":"symbol"},"doc://DiscogsService/documentation/DiscogsService":{"title":"DiscogsService","role":"collection","abstract":[],"kind":"symbol","type":"topic","identifier":"doc:\/\/DiscogsService\/documentation\/DiscogsService","url":"\/documentation\/discogsservice"},"doc://DiscogsService/documentation/DiscogsService/AuthMiddleware":{"abstract":[{"type":"text","text":"A middleware that attaches any defined authentication credentials into the requests to the service."}],"identifier":"doc:\/\/DiscogsService\/documentation\/DiscogsService\/AuthMiddleware","type":"topic","kind":"symbol","url":"\/documentation\/discogsservice\/authmiddleware","role":"symbol","navigatorTitle":[{"kind":"identifier","text":"AuthMiddleware"}],"fragments":[{"kind":"keyword","text":"struct"},{"kind":"text","text":" "},{"kind":"identifier","text":"AuthMiddleware"}],"title":"AuthMiddleware"},"doc://DiscogsService/s12CaseIterableP":{"type":"unresolvable","identifier":"doc:\/\/DiscogsService\/s12CaseIterableP","title":"Swift.CaseIterable"},"doc://DiscogsService/SH":{"type":"unresolvable","identifier":"doc:\/\/DiscogsService\/SH","title":"Swift.Hashable"},"doc://DiscogsService/SQ":{"type":"unresolvable","identifier":"doc:\/\/DiscogsService\/SQ","title":"Swift.Equatable"},"doc://DiscogsService/documentation/DiscogsService/AuthMethod":{"role":"symbol","identifier":"doc:\/\/DiscogsService\/documentation\/DiscogsService\/AuthMethod","abstract":[{"text":"A representation of the available authentication methods at the Discogs service.","type":"text"}],"navigatorTitle":[{"text":"AuthMethod","kind":"identifier"}],"type":"topic","kind":"symbol","fragments":[{"text":"enum","kind":"keyword"},{"text":" ","kind":"text"},{"text":"AuthMethod","kind":"identifier"}],"title":"AuthMethod","url":"\/documentation\/discogsservice\/authmethod"},"doc://DiscogsService/documentation/DiscogsService/AuthTransport/onHeader":{"url":"\/documentation\/discogsservice\/authtransport\/onheader","fragments":[{"text":"case","kind":"keyword"},{"text":" ","kind":"text"},{"text":"onHeader","kind":"identifier"}],"abstract":[{"type":"text","text":"Authentication credential are sent in a request as an "},{"type":"codeVoice","code":"Authentication"},{"type":"text","text":" header."}],"title":"AuthTransport.onHeader","identifier":"doc:\/\/DiscogsService\/documentation\/DiscogsService\/AuthTransport\/onHeader","type":"topic","kind":"symbol","role":"symbol"},"doc://DiscogsService/s8SendableP":{"type":"unresolvable","identifier":"doc:\/\/DiscogsService\/s8SendableP","title":"Swift.Sendable"}}} |