neptune-backend-0.3.0: Neptune Client
Safe HaskellNone
LanguageHaskell2010

Neptune.Backend.Core

Description

 
Synopsis

NeptuneBackendConfig

data NeptuneBackendConfig Source #

 

Constructors

NeptuneBackendConfig 

Fields

Instances

Instances details
Show NeptuneBackendConfig Source #

display the config

Instance details

Defined in Neptune.Backend.Core

newConfig :: IO NeptuneBackendConfig Source #

constructs a default NeptuneBackendConfig

configHost:

http://localhost

configUserAgent:

"neptune-backend/0.1.0.0"

addAuthMethod :: AuthMethod auth => NeptuneBackendConfig -> auth -> NeptuneBackendConfig Source #

updates config use AuthMethod on matching requests

withStdoutLogging :: NeptuneBackendConfig -> IO NeptuneBackendConfig Source #

updates the config to use stdout logging

withStderrLogging :: NeptuneBackendConfig -> IO NeptuneBackendConfig Source #

updates the config to use stderr logging

withNoLogging :: NeptuneBackendConfig -> NeptuneBackendConfig Source #

updates the config to disable logging

NeptuneBackendRequest

data NeptuneBackendRequest req contentType res accept Source #

Represents a request.

Type Variables:

  • req - request operation
  • contentType - MimeType associated with request body
  • res - response model
  • accept - MimeType associated with response body

Constructors

NeptuneBackendRequest 

Fields

Instances

Instances details
Show (NeptuneBackendRequest req contentType res accept) Source # 
Instance details

Defined in Neptune.Backend.Core

Methods

showsPrec :: Int -> NeptuneBackendRequest req contentType res accept -> ShowS #

show :: NeptuneBackendRequest req contentType res accept -> String #

showList :: [NeptuneBackendRequest req contentType res accept] -> ShowS #

rMethodL :: Lens_' (NeptuneBackendRequest req contentType res accept) Method Source #

rMethod Lens

rUrlPathL :: Lens_' (NeptuneBackendRequest req contentType res accept) [ByteString] Source #

rParamsL :: Lens_' (NeptuneBackendRequest req contentType res accept) Params Source #

rParams Lens

rAuthTypesL :: Lens_' (NeptuneBackendRequest req contentType res accept) [TypeRep] Source #

rParams Lens

HasBodyParam

class HasBodyParam req param where Source #

Designates the body parameter of a request

Minimal complete definition

Nothing

Methods

setBodyParam :: forall contentType res accept. (Consumes req contentType, MimeRender contentType param) => NeptuneBackendRequest req contentType res accept -> param -> NeptuneBackendRequest req contentType res accept Source #

Instances

Instances details
HasBodyParam UpdateUserProfile UserProfileUpdateDTO Source # 
Instance details

Defined in Neptune.Backend.API.ApiDefault

HasBodyParam UpdateTags UpdateTagsParams Source # 
Instance details

Defined in Neptune.Backend.API.ApiDefault

Methods

setBodyParam :: (Consumes UpdateTags contentType, MimeRender contentType UpdateTagsParams) => NeptuneBackendRequest UpdateTags contentType res accept -> UpdateTagsParams -> NeptuneBackendRequest UpdateTags contentType res accept Source #

HasBodyParam UpdateProjectMember ProjectMemberUpdateDTO Source # 
Instance details

Defined in Neptune.Backend.API.ApiDefault

HasBodyParam UpdateProjectInvitation ProjectInvitationUpdateDTO Source # 
Instance details

Defined in Neptune.Backend.API.ApiDefault

HasBodyParam UpdateProject ProjectUpdateDTO Source # 
Instance details

Defined in Neptune.Backend.API.ApiDefault

Methods

setBodyParam :: (Consumes UpdateProject contentType, MimeRender contentType ProjectUpdateDTO) => NeptuneBackendRequest UpdateProject contentType res accept -> ProjectUpdateDTO -> NeptuneBackendRequest UpdateProject contentType res accept Source #

HasBodyParam UpdateOrganizationMember OrganizationMemberUpdateDTO Source # 
Instance details

Defined in Neptune.Backend.API.ApiDefault

HasBodyParam UpdateOrganizationInvitation OrganizationInvitationUpdateDTO Source # 
Instance details

Defined in Neptune.Backend.API.ApiDefault

HasBodyParam UpdateOrganization OrganizationUpdateDTO Source # 
Instance details

Defined in Neptune.Backend.API.ApiDefault

HasBodyParam UpdateExperiment EditExperimentParams Source # 
Instance details

Defined in Neptune.Backend.API.ApiDefault

HasBodyParam UpdateChartSet ChartSetParams Source # 
Instance details

Defined in Neptune.Backend.API.ApiDefault

Methods

setBodyParam :: (Consumes UpdateChartSet contentType, MimeRender contentType ChartSetParams) => NeptuneBackendRequest UpdateChartSet contentType res accept -> ChartSetParams -> NeptuneBackendRequest UpdateChartSet contentType res accept Source #

HasBodyParam UpdateChart ChartDefinition Source # 
Instance details

Defined in Neptune.Backend.API.ApiDefault

Methods

setBodyParam :: (Consumes UpdateChart contentType, MimeRender contentType ChartDefinition) => NeptuneBackendRequest UpdateChart contentType res accept -> ChartDefinition -> NeptuneBackendRequest UpdateChart contentType res accept Source #

HasBodyParam TrashExperiments ExperimentIds Source # 
Instance details

Defined in Neptune.Backend.API.ApiDefault

Methods

setBodyParam :: (Consumes TrashExperiments contentType, MimeRender contentType ExperimentIds) => NeptuneBackendRequest TrashExperiments contentType res accept -> ExperimentIds -> NeptuneBackendRequest TrashExperiments contentType res accept Source #

HasBodyParam SendRegistrationSurvey RegistrationSurveyDTO Source # 
Instance details

Defined in Neptune.Backend.API.ApiDefault

HasBodyParam SendQuestionnaire QuestionnaireDTO Source # 
Instance details

Defined in Neptune.Backend.API.ApiDefault

HasBodyParam RestoreExperiments ExperimentIds Source # 
Instance details

Defined in Neptune.Backend.API.ApiDefault

HasBodyParam PostSystemMetricValues MetricValues Source # 
Instance details

Defined in Neptune.Backend.API.ApiDefault

HasBodyParam PostChannelValues ChannelsValues Source # 
Instance details

Defined in Neptune.Backend.API.ApiDefault

HasBodyParam MarkExperimentCompleted CompletedExperimentParams Source # 
Instance details

Defined in Neptune.Backend.API.ApiDefault

HasBodyParam EmptyExperimentsTrash ExperimentIds Source # 
Instance details

Defined in Neptune.Backend.API.ApiDefault

HasBodyParam DeleteUserProfileLink LinkDTO Source # 
Instance details

Defined in Neptune.Backend.API.ApiDefault

HasBodyParam CreateSystemMetric SystemMetricParams Source # 
Instance details

Defined in Neptune.Backend.API.ApiDefault

HasBodyParam CreateSystemChannel ChannelParams Source # 
Instance details

Defined in Neptune.Backend.API.ApiDefault

HasBodyParam CreateReservation NewReservationDTO Source # 
Instance details

Defined in Neptune.Backend.API.ApiDefault

HasBodyParam CreateProjectInvitation NewProjectInvitationDTO Source # 
Instance details

Defined in Neptune.Backend.API.ApiDefault

HasBodyParam CreateProject NewProjectDTO Source # 
Instance details

Defined in Neptune.Backend.API.ApiDefault

Methods

setBodyParam :: (Consumes CreateProject contentType, MimeRender contentType NewProjectDTO) => NeptuneBackendRequest CreateProject contentType res accept -> NewProjectDTO -> NeptuneBackendRequest CreateProject contentType res accept Source #

HasBodyParam CreateOrganizationInvitation NewOrganizationInvitationDTO Source #

Body Param "newOrganizationInvitation" - addToAllProjects flag is ignored when roleGrant value is admin

Instance details

Defined in Neptune.Backend.API.ApiDefault

HasBodyParam CreateOrganization OrganizationCreationParamsDTO Source # 
Instance details

Defined in Neptune.Backend.API.ApiDefault

HasBodyParam CreateExperiment ExperimentCreationParams Source # 
Instance details

Defined in Neptune.Backend.API.ApiDefault

HasBodyParam CreateCheckoutSession CreateSessionParamsDTO Source #

Body Param "createSessionParams" - Stripe Checkout Session details

Instance details

Defined in Neptune.Backend.API.ApiDefault

HasBodyParam CreateChartSet ChartSetParams Source # 
Instance details

Defined in Neptune.Backend.API.ApiDefault

Methods

setBodyParam :: (Consumes CreateChartSet contentType, MimeRender contentType ChartSetParams) => NeptuneBackendRequest CreateChartSet contentType res accept -> ChartSetParams -> NeptuneBackendRequest CreateChartSet contentType res accept Source #

HasBodyParam CreateChart ChartDefinition Source # 
Instance details

Defined in Neptune.Backend.API.ApiDefault

Methods

setBodyParam :: (Consumes CreateChart contentType, MimeRender contentType ChartDefinition) => NeptuneBackendRequest CreateChart contentType res accept -> ChartDefinition -> NeptuneBackendRequest CreateChart contentType res accept Source #

HasBodyParam CreateChannel ChannelParams Source # 
Instance details

Defined in Neptune.Backend.API.ApiDefault

Methods

setBodyParam :: (Consumes CreateChannel contentType, MimeRender contentType ChannelParams) => NeptuneBackendRequest CreateChannel contentType res accept -> ChannelParams -> NeptuneBackendRequest CreateChannel contentType res accept Source #

HasBodyParam CreateCardUpdateSession CreateSessionParamsDTO Source #

Body Param "createSessionParams" - Stripe Checkout Session details

Instance details

Defined in Neptune.Backend.API.ApiDefault

HasBodyParam ChangePassword PasswordChangeDTO Source # 
Instance details

Defined in Neptune.Backend.API.ApiDefault

HasBodyParam CancelSubscription SubscriptionCancelInfoDTO Source # 
Instance details

Defined in Neptune.Backend.API.ApiDefault

HasBodyParam AddUserProfileLink UserProfileLinkDTO Source # 
Instance details

Defined in Neptune.Backend.API.ApiDefault

HasBodyParam AddProjectMember NewProjectMemberDTO Source # 
Instance details

Defined in Neptune.Backend.API.ApiDefault

HasBodyParam AddOrganizationMember NewOrganizationMemberDTO Source # 
Instance details

Defined in Neptune.Backend.API.ApiDefault

HasBodyParam AbortExperiments ExperimentIds Source # 
Instance details

Defined in Neptune.Backend.API.ApiDefault

Methods

setBodyParam :: (Consumes AbortExperiments contentType, MimeRender contentType ExperimentIds) => NeptuneBackendRequest AbortExperiments contentType res accept -> ExperimentIds -> NeptuneBackendRequest AbortExperiments contentType res accept Source #

HasOptionalParam

class HasOptionalParam req param where Source #

Designates the optional parameters of a request

Minimal complete definition

applyOptionalParam | (-&-)

Methods

applyOptionalParam :: NeptuneBackendRequest req contentType res accept -> param -> NeptuneBackendRequest req contentType res accept Source #

Apply an optional parameter to a request

(-&-) :: NeptuneBackendRequest req contentType res accept -> param -> NeptuneBackendRequest req contentType res accept infixl 2 Source #

infix operator / alias for addOptionalParam

Instances

Instances details
HasOptionalParam StorageUsage0 ProjectIdentifier Source # 
Instance details

Defined in Neptune.Backend.API.ApiDefault

HasOptionalParam StorageUsage0 OrganizationIdentifier Source # 
Instance details

Defined in Neptune.Backend.API.ApiDefault

HasOptionalParam ListProjectsMembers IncludeInvitations Source # 
Instance details

Defined in Neptune.Backend.API.ApiDefault

HasOptionalParam ListProjects Visibility Source # 
Instance details

Defined in Neptune.Backend.API.ApiDefault

Methods

applyOptionalParam :: NeptuneBackendRequest ListProjects contentType res accept -> Visibility -> NeptuneBackendRequest ListProjects contentType res accept Source #

(-&-) :: NeptuneBackendRequest ListProjects contentType res accept -> Visibility -> NeptuneBackendRequest ListProjects contentType res accept Source #

HasOptionalParam ListProjects ViewedUsername Source # 
Instance details

Defined in Neptune.Backend.API.ApiDefault

HasOptionalParam ListProjects UserRelation Source # 
Instance details

Defined in Neptune.Backend.API.ApiDefault

Methods

applyOptionalParam :: NeptuneBackendRequest ListProjects contentType res accept -> UserRelation -> NeptuneBackendRequest ListProjects contentType res accept Source #

(-&-) :: NeptuneBackendRequest ListProjects contentType res accept -> UserRelation -> NeptuneBackendRequest ListProjects contentType res accept Source #

HasOptionalParam ListProjects SortDirection Source # 
Instance details

Defined in Neptune.Backend.API.ApiDefault

Methods

applyOptionalParam :: NeptuneBackendRequest ListProjects contentType res accept -> SortDirection -> NeptuneBackendRequest ListProjects contentType res accept Source #

(-&-) :: NeptuneBackendRequest ListProjects contentType res accept -> SortDirection -> NeptuneBackendRequest ListProjects contentType res accept Source #

HasOptionalParam ListProjects SortBy Source # 
Instance details

Defined in Neptune.Backend.API.ApiDefault

Methods

applyOptionalParam :: NeptuneBackendRequest ListProjects contentType res accept -> SortBy -> NeptuneBackendRequest ListProjects contentType res accept Source #

(-&-) :: NeptuneBackendRequest ListProjects contentType res accept -> SortBy -> NeptuneBackendRequest ListProjects contentType res accept Source #

HasOptionalParam ListProjects SearchTerm Source # 
Instance details

Defined in Neptune.Backend.API.ApiDefault

Methods

applyOptionalParam :: NeptuneBackendRequest ListProjects contentType res accept -> SearchTerm -> NeptuneBackendRequest ListProjects contentType res accept Source #

(-&-) :: NeptuneBackendRequest ListProjects contentType res accept -> SearchTerm -> NeptuneBackendRequest ListProjects contentType res accept Source #

HasOptionalParam ListProjects ProjectKey Source # 
Instance details

Defined in Neptune.Backend.API.ApiDefault

Methods

applyOptionalParam :: NeptuneBackendRequest ListProjects contentType res accept -> ProjectKey -> NeptuneBackendRequest ListProjects contentType res accept Source #

(-&-) :: NeptuneBackendRequest ListProjects contentType res accept -> ProjectKey -> NeptuneBackendRequest ListProjects contentType res accept Source #

HasOptionalParam ListProjects OrganizationIdentifier Source # 
Instance details

Defined in Neptune.Backend.API.ApiDefault

HasOptionalParam ListProjects OrgRelation Source # 
Instance details

Defined in Neptune.Backend.API.ApiDefault

Methods

applyOptionalParam :: NeptuneBackendRequest ListProjects contentType res accept -> OrgRelation -> NeptuneBackendRequest ListProjects contentType res accept Source #

(-&-) :: NeptuneBackendRequest ListProjects contentType res accept -> OrgRelation -> NeptuneBackendRequest ListProjects contentType res accept Source #

HasOptionalParam ListProjects Offset Source # 
Instance details

Defined in Neptune.Backend.API.ApiDefault

Methods

applyOptionalParam :: NeptuneBackendRequest ListProjects contentType res accept -> Offset -> NeptuneBackendRequest ListProjects contentType res accept Source #

(-&-) :: NeptuneBackendRequest ListProjects contentType res accept -> Offset -> NeptuneBackendRequest ListProjects contentType res accept Source #

HasOptionalParam ListProjects Limit Source # 
Instance details

Defined in Neptune.Backend.API.ApiDefault

Methods

applyOptionalParam :: NeptuneBackendRequest ListProjects contentType res accept -> Limit -> NeptuneBackendRequest ListProjects contentType res accept Source #

(-&-) :: NeptuneBackendRequest ListProjects contentType res accept -> Limit -> NeptuneBackendRequest ListProjects contentType res accept Source #

HasOptionalParam ListMembers UsernamePrefix Source # 
Instance details

Defined in Neptune.Backend.API.ApiDefault

Methods

applyOptionalParam :: NeptuneBackendRequest ListMembers contentType res accept -> UsernamePrefix -> NeptuneBackendRequest ListMembers contentType res accept Source #

(-&-) :: NeptuneBackendRequest ListMembers contentType res accept -> UsernamePrefix -> NeptuneBackendRequest ListMembers contentType res accept Source #

HasOptionalParam ListMembers ProjectIdentifier Source # 
Instance details

Defined in Neptune.Backend.API.ApiDefault

HasOptionalParam ListMembers OrganizationIdentifier Source # 
Instance details

Defined in Neptune.Backend.API.ApiDefault

HasOptionalParam ListMembers Offset Source # 
Instance details

Defined in Neptune.Backend.API.ApiDefault

Methods

applyOptionalParam :: NeptuneBackendRequest ListMembers contentType res accept -> Offset -> NeptuneBackendRequest ListMembers contentType res accept Source #

(-&-) :: NeptuneBackendRequest ListMembers contentType res accept -> Offset -> NeptuneBackendRequest ListMembers contentType res accept Source #

HasOptionalParam ListMembers Limit Source # 
Instance details

Defined in Neptune.Backend.API.ApiDefault

Methods

applyOptionalParam :: NeptuneBackendRequest ListMembers contentType res accept -> Limit -> NeptuneBackendRequest ListMembers contentType res accept Source #

(-&-) :: NeptuneBackendRequest ListMembers contentType res accept -> Limit -> NeptuneBackendRequest ListMembers contentType res accept Source #

HasOptionalParam GetSystemMetricsCSV Gzipped Source # 
Instance details

Defined in Neptune.Backend.API.ApiDefault

HasOptionalParam GetSystemMetricValues StartPoint Source # 
Instance details

Defined in Neptune.Backend.API.ApiDefault

HasOptionalParam GetSystemMetricValues ItemCount Source # 
Instance details

Defined in Neptune.Backend.API.ApiDefault

HasOptionalParam GetSystemMetricValues EndPoint Source # 
Instance details

Defined in Neptune.Backend.API.ApiDefault

HasOptionalParam GetChannelValuesCSV Gzipped Source # 
Instance details

Defined in Neptune.Backend.API.ApiDefault

HasOptionalParam GetChannelValuesCSV ExperimentId Source # 
Instance details

Defined in Neptune.Backend.API.ApiDefault

HasOptionalParam GetChannelValues Offset Source # 
Instance details

Defined in Neptune.Backend.API.ApiDefault

HasOptionalParam GetChannelValues Limit Source # 
Instance details

Defined in Neptune.Backend.API.ApiDefault

Methods

applyOptionalParam :: NeptuneBackendRequest GetChannelValues contentType res accept -> Limit -> NeptuneBackendRequest GetChannelValues contentType res accept Source #

(-&-) :: NeptuneBackendRequest GetChannelValues contentType res accept -> Limit -> NeptuneBackendRequest GetChannelValues contentType res accept Source #

HasOptionalParam DeprecatedGetChannelValuesCSV Gzipped Source # 
Instance details

Defined in Neptune.Backend.API.ApiDefault

HasOptionalParam DeprecatedGetChannelValuesCSV ExperimentId Source # 
Instance details

Defined in Neptune.Backend.API.ApiDefault

HasOptionalParam DeprecatedGetChannelValues Offset Source # 
Instance details

Defined in Neptune.Backend.API.ApiDefault

HasOptionalParam DeprecatedGetChannelValues Limit Source # 
Instance details

Defined in Neptune.Backend.API.ApiDefault

HasOptionalParam CreateExperiment XNeptuneCliVersion Source # 
Instance details

Defined in Neptune.Backend.API.ApiDefault

HasOptionalParam AbortExperiments MarkOnly Source # 
Instance details

Defined in Neptune.Backend.API.ApiDefault

data Params Source #

Request Params

Instances

Instances details
Show Params Source # 
Instance details

Defined in Neptune.Backend.Core

NeptuneBackendRequest Utils

_mkRequest Source #

Arguments

:: Method

Method

-> [ByteString]

Endpoint

-> NeptuneBackendRequest req contentType res accept

req: Request Type, res: Response Type

setHeader :: NeptuneBackendRequest req contentType res accept -> [Header] -> NeptuneBackendRequest req contentType res accept Source #

addHeader :: NeptuneBackendRequest req contentType res accept -> [Header] -> NeptuneBackendRequest req contentType res accept Source #

removeHeader :: NeptuneBackendRequest req contentType res accept -> [HeaderName] -> NeptuneBackendRequest req contentType res accept Source #

_setContentTypeHeader :: forall req contentType res accept. MimeType contentType => NeptuneBackendRequest req contentType res accept -> NeptuneBackendRequest req contentType res accept Source #

_setAcceptHeader :: forall req contentType res accept. MimeType accept => NeptuneBackendRequest req contentType res accept -> NeptuneBackendRequest req contentType res accept Source #

setQuery :: NeptuneBackendRequest req contentType res accept -> [QueryItem] -> NeptuneBackendRequest req contentType res accept Source #

addQuery :: NeptuneBackendRequest req contentType res accept -> [QueryItem] -> NeptuneBackendRequest req contentType res accept Source #

addForm :: NeptuneBackendRequest req contentType res accept -> Form -> NeptuneBackendRequest req contentType res accept Source #

_addMultiFormPart :: NeptuneBackendRequest req contentType res accept -> Part -> NeptuneBackendRequest req contentType res accept Source #

_setBodyBS :: NeptuneBackendRequest req contentType res accept -> ByteString -> NeptuneBackendRequest req contentType res accept Source #

_setBodyLBS :: NeptuneBackendRequest req contentType res accept -> ByteString -> NeptuneBackendRequest req contentType res accept Source #

_hasAuthType :: AuthMethod authMethod => NeptuneBackendRequest req contentType res accept -> Proxy authMethod -> NeptuneBackendRequest req contentType res accept Source #

Params Utils

OpenAPI CollectionFormat Utils

data CollectionFormat Source #

Determines the format of the array if type array is used.

Constructors

CommaSeparated

CSV format for multiple parameters.

SpaceSeparated

Also called SSV

TabSeparated

Also called TSV

PipeSeparated

`value1|value2|value2`

MultiParamArray

Using multiple GET parameters, e.g. `foo=bar&foo=baz`. This is valid only for parameters in "query" (Query) or "formData" (Form)

_toColl :: Traversable f => CollectionFormat -> (f a -> [(b, ByteString)]) -> f [a] -> [(b, ByteString)] Source #

_toCollA :: (Traversable f, Traversable t, Alternative t) => CollectionFormat -> (f (t a) -> [(b, t ByteString)]) -> f (t [a]) -> [(b, t ByteString)] Source #

_toCollA' :: (Monoid c, Traversable f, Traversable t, Alternative t) => CollectionFormat -> (f (t a) -> [(b, t c)]) -> (Char -> c) -> f (t [a]) -> [(b, t c)] Source #

AuthMethods

class Typeable a => AuthMethod a where Source #

Provides a method to apply auth methods to requests

Methods

applyAuthMethod :: NeptuneBackendConfig -> a -> NeptuneBackendRequest req contentType res accept -> IO (NeptuneBackendRequest req contentType res accept) Source #

Instances

Instances details
AuthMethod AnyAuthMethod Source # 
Instance details

Defined in Neptune.Backend.Core

Methods

applyAuthMethod :: NeptuneBackendConfig -> AnyAuthMethod -> NeptuneBackendRequest req contentType res accept -> IO (NeptuneBackendRequest req contentType res accept) Source #

AuthMethod AuthOAuthOauth2 Source # 
Instance details

Defined in Neptune.Backend.Model

Methods

applyAuthMethod :: NeptuneBackendConfig -> AuthOAuthOauth2 -> NeptuneBackendRequest req contentType res accept -> IO (NeptuneBackendRequest req contentType res accept) Source #

data AnyAuthMethod Source #

An existential wrapper for any AuthMethod

Constructors

forall a.AuthMethod a => AnyAuthMethod a 

Instances

Instances details
AuthMethod AnyAuthMethod Source # 
Instance details

Defined in Neptune.Backend.Core

Methods

applyAuthMethod :: NeptuneBackendConfig -> AnyAuthMethod -> NeptuneBackendRequest req contentType res accept -> IO (NeptuneBackendRequest req contentType res accept) Source #

_applyAuthMethods :: NeptuneBackendRequest req contentType res accept -> NeptuneBackendConfig -> IO (NeptuneBackendRequest req contentType res accept) Source #

apply all matching AuthMethods in config to request

Utils

_omitNulls :: [(Text, Value)] -> Value Source #

Removes Null fields. (OpenAPI-Specification 2.0 does not allow Null in JSON)

_toFormItem :: (ToHttpApiData a, Functor f) => t -> f a -> f (t, [Text]) Source #

Encodes fields using WH.toQueryParam

_emptyToNothing :: Maybe String -> Maybe String Source #

Collapse (Just "") to Nothing

_memptyToNothing :: (Monoid a, Eq a) => Maybe a -> Maybe a Source #

Collapse (Just mempty) to Nothing

DateTime Formatting

newtype DateTime Source #

Constructors

DateTime 

Fields

Instances

Instances details
Eq DateTime Source # 
Instance details

Defined in Neptune.Backend.Core

Data DateTime Source # 
Instance details

Defined in Neptune.Backend.Core

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> DateTime -> c DateTime #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c DateTime #

toConstr :: DateTime -> Constr #

dataTypeOf :: DateTime -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c DateTime) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c DateTime) #

gmapT :: (forall b. Data b => b -> b) -> DateTime -> DateTime #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> DateTime -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> DateTime -> r #

gmapQ :: (forall d. Data d => d -> u) -> DateTime -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> DateTime -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> DateTime -> m DateTime #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> DateTime -> m DateTime #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> DateTime -> m DateTime #

Ord DateTime Source # 
Instance details

Defined in Neptune.Backend.Core

Show DateTime Source # 
Instance details

Defined in Neptune.Backend.Core

ToJSON DateTime Source # 
Instance details

Defined in Neptune.Backend.Core

FromJSON DateTime Source # 
Instance details

Defined in Neptune.Backend.Core

NFData DateTime Source # 
Instance details

Defined in Neptune.Backend.Core

Methods

rnf :: DateTime -> () #

ToHttpApiData DateTime Source # 
Instance details

Defined in Neptune.Backend.Core

FromHttpApiData DateTime Source # 
Instance details

Defined in Neptune.Backend.Core

MimeRender MimeMultipartFormData DateTime Source # 
Instance details

Defined in Neptune.Backend.Core

_readDateTime :: (MonadFail m, Alternative m) => String -> m DateTime Source #

_parseISO8601

_showDateTime :: (t ~ UTCTime, FormatTime t) => t -> String Source #

TI.formatISO8601Millis

_parseISO8601 :: (ParseTime t, MonadFail m, Alternative m) => String -> m t Source #

parse an ISO8601 date-time string

Date Formatting

newtype Date Source #

Constructors

Date 

Fields

Instances

Instances details
Enum Date Source # 
Instance details

Defined in Neptune.Backend.Core

Methods

succ :: Date -> Date #

pred :: Date -> Date #

toEnum :: Int -> Date #

fromEnum :: Date -> Int #

enumFrom :: Date -> [Date] #

enumFromThen :: Date -> Date -> [Date] #

enumFromTo :: Date -> Date -> [Date] #

enumFromThenTo :: Date -> Date -> Date -> [Date] #

Eq Date Source # 
Instance details

Defined in Neptune.Backend.Core

Methods

(==) :: Date -> Date -> Bool #

(/=) :: Date -> Date -> Bool #

Data Date Source # 
Instance details

Defined in Neptune.Backend.Core

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Date -> c Date #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Date #

toConstr :: Date -> Constr #

dataTypeOf :: Date -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Date) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Date) #

gmapT :: (forall b. Data b => b -> b) -> Date -> Date #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Date -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Date -> r #

gmapQ :: (forall d. Data d => d -> u) -> Date -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> Date -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Date -> m Date #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Date -> m Date #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Date -> m Date #

Ord Date Source # 
Instance details

Defined in Neptune.Backend.Core

Methods

compare :: Date -> Date -> Ordering #

(<) :: Date -> Date -> Bool #

(<=) :: Date -> Date -> Bool #

(>) :: Date -> Date -> Bool #

(>=) :: Date -> Date -> Bool #

max :: Date -> Date -> Date #

min :: Date -> Date -> Date #

Show Date Source # 
Instance details

Defined in Neptune.Backend.Core

Methods

showsPrec :: Int -> Date -> ShowS #

show :: Date -> String #

showList :: [Date] -> ShowS #

Ix Date Source # 
Instance details

Defined in Neptune.Backend.Core

Methods

range :: (Date, Date) -> [Date] #

index :: (Date, Date) -> Date -> Int #

unsafeIndex :: (Date, Date) -> Date -> Int #

inRange :: (Date, Date) -> Date -> Bool #

rangeSize :: (Date, Date) -> Int #

unsafeRangeSize :: (Date, Date) -> Int #

ToJSON Date Source # 
Instance details

Defined in Neptune.Backend.Core

FromJSON Date Source # 
Instance details

Defined in Neptune.Backend.Core

NFData Date Source # 
Instance details

Defined in Neptune.Backend.Core

Methods

rnf :: Date -> () #

ToHttpApiData Date Source # 
Instance details

Defined in Neptune.Backend.Core

FromHttpApiData Date Source # 
Instance details

Defined in Neptune.Backend.Core

MimeRender MimeMultipartFormData Date Source # 
Instance details

Defined in Neptune.Backend.Core

_readDate :: MonadFail m => String -> m Date Source #

TI.parseTimeM True TI.defaultTimeLocale "%Y-%m-%d"

_showDate :: FormatTime t => t -> String Source #

TI.formatTime TI.defaultTimeLocale "%Y-%m-%d"

Byte/Binary Formatting

newtype ByteArray Source #

base64 encoded characters

Constructors

ByteArray 

Instances

Instances details
Eq ByteArray Source # 
Instance details

Defined in Neptune.Backend.Core

Data ByteArray Source # 
Instance details

Defined in Neptune.Backend.Core

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> ByteArray -> c ByteArray #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c ByteArray #

toConstr :: ByteArray -> Constr #

dataTypeOf :: ByteArray -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c ByteArray) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c ByteArray) #

gmapT :: (forall b. Data b => b -> b) -> ByteArray -> ByteArray #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> ByteArray -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> ByteArray -> r #

gmapQ :: (forall d. Data d => d -> u) -> ByteArray -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> ByteArray -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> ByteArray -> m ByteArray #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> ByteArray -> m ByteArray #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> ByteArray -> m ByteArray #

Ord ByteArray Source # 
Instance details

Defined in Neptune.Backend.Core

Show ByteArray Source # 
Instance details

Defined in Neptune.Backend.Core

ToJSON ByteArray Source # 
Instance details

Defined in Neptune.Backend.Core

FromJSON ByteArray Source # 
Instance details

Defined in Neptune.Backend.Core

NFData ByteArray Source # 
Instance details

Defined in Neptune.Backend.Core

Methods

rnf :: ByteArray -> () #

ToHttpApiData ByteArray Source # 
Instance details

Defined in Neptune.Backend.Core

FromHttpApiData ByteArray Source # 
Instance details

Defined in Neptune.Backend.Core

MimeRender MimeMultipartFormData ByteArray Source # 
Instance details

Defined in Neptune.Backend.Core

_readByteArray :: MonadFail m => Text -> m ByteArray Source #

read base64 encoded characters

_showByteArray :: ByteArray -> Text Source #

show base64 encoded characters

newtype Binary Source #

any sequence of octets

Constructors

Binary 

Fields

Instances

Instances details
Eq Binary Source # 
Instance details

Defined in Neptune.Backend.Core

Methods

(==) :: Binary -> Binary -> Bool #

(/=) :: Binary -> Binary -> Bool #

Data Binary Source # 
Instance details

Defined in Neptune.Backend.Core

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Binary -> c Binary #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Binary #

toConstr :: Binary -> Constr #

dataTypeOf :: Binary -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Binary) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Binary) #

gmapT :: (forall b. Data b => b -> b) -> Binary -> Binary #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Binary -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Binary -> r #

gmapQ :: (forall d. Data d => d -> u) -> Binary -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> Binary -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Binary -> m Binary #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Binary -> m Binary #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Binary -> m Binary #

Ord Binary Source # 
Instance details

Defined in Neptune.Backend.Core

Show Binary Source # 
Instance details

Defined in Neptune.Backend.Core

ToJSON Binary Source # 
Instance details

Defined in Neptune.Backend.Core

FromJSON Binary Source # 
Instance details

Defined in Neptune.Backend.Core

NFData Binary Source # 
Instance details

Defined in Neptune.Backend.Core

Methods

rnf :: Binary -> () #

ToHttpApiData Binary Source # 
Instance details

Defined in Neptune.Backend.Core

FromHttpApiData Binary Source # 
Instance details

Defined in Neptune.Backend.Core

MimeRender MimeMultipartFormData Binary Source # 
Instance details

Defined in Neptune.Backend.Core

Lens Type Aliases

type Lens_' s a = Lens_ s s a a Source #

type Lens_ s t a b = forall (f :: * -> *). Functor f => (a -> f b) -> s -> f t Source #