databrary-1: Databrary

Safe HaskellNone
LanguageHaskell2010

Model.Permission.Types

Contents

Synopsis

Documentation

data Permission Source #

Instances

Bounded Permission Source # 
Enum Permission Source # 
Eq Permission Source # 
Ord Permission Source # 
Show Permission Source # 
Ix Permission Source # 
Monoid Permission Source # 
Lift Permission Source # 

Methods

lift :: Permission -> Q Exp #

ToJSON Permission Source # 
FromJSON Permission Source # 
PGEnum Permission Source # 
Kinded Permission Source # 

Methods

kindOf :: IsString s => Permission -> s Source #

DBEnum Permission Source # 
PGRep "permission" Permission Source # 
PGParameter "permission" Permission Source # 

Methods

pgEncode :: PGTypeName "permission" -> Permission -> PGTextValue #

pgLiteral :: PGTypeName "permission" -> Permission -> ByteString #

pgEncodeValue :: PGTypeEnv -> PGTypeName "permission" -> Permission -> PGValue #

PGColumn "permission" Permission Source # 

Methods

pgDecode :: PGTypeName "permission" -> PGTextValue -> Permission #

pgDecodeBinary :: PGTypeEnv -> PGTypeName "permission" -> PGBinaryValue -> Permission #

pgDecodeValue :: PGTypeEnv -> PGTypeName "permission" -> PGValue -> Permission #

Has Permission Volume Source # 
Has Permission Container Source # 
Has Permission Record Source # 
Has Permission Slot Source # 

Methods

view :: Slot -> Permission Source #

Deform f_a42l3 Permission Source # 

Methods

deform :: Monad m => DeformT f_a42l3 m Permission Source #

data Access Source #

TODO: Figure out what this thing represents

Constructors

Access 

Fields

  • accessSite' :: !Permission

    A given acting user's permission level on on the databrary site's data (e.g. volumes). The permission is computed through considering inherited permissions from the databrary site (party 0) down to the acting user.

  • accessMember' :: !Permission

    ??

data PublicPolicy Source #

A PublicPolicy represents a set of rules that customize the public viewer role for a given volume. Restricted is the only current policy. It signifies hiding all data, except high level summary information and highlights. The word policy is a reference to the term used in attribute-based access control.

Instances

data SharedPolicy Source #

A SharedPolicy is the same as PublicPolicy currently, but applied to the shared viewer role.

Instances

extractPermissionIgnorePolicy :: VolumeRolePolicy -> Permission Source #

Transition function used until all call sites take into Policy value into consideration.

Orphan instances

PGType "permission" Source # 

Methods

pgTypeName :: PGTypeName "permission" -> String #

pgBinaryColumn :: PGTypeEnv -> PGTypeName "permission" -> Bool #