Reference / Modules / client / LocRequestState
Class: LocRequestState
client.LocRequestState
A State instance is a state in the "state machine" sense. It comes with some behavior and state transition methods. A state transition method returns an instance of the next state given the executed operation, which discards current object.
This class should be extended by client class. It provides method enabling the client class to query if it was already discarded or not as well as methods actually discarding the state.
Hierarchy
Table of contents
Constructors
Properties
Accessors
Methods
- _withLocs
- checkHash
- data
- discard
- discardOnSuccess
- ensureCurrent
- finalizeOnSuccess
- getCurrentState
- getCurrentStateOrThrow
- getFile
- isLogionData
- isLogionIdentity
- isOwner
- isRequester
- isVerifiedIssuer
- locsState
- refresh
- supersededLoc
- syncDiscardOnSuccess
- withLocs
- buildLocData
- checkHash
- createFromLoc
- createFromRequest
- dataFromRequest
- dataFromRequestAndLoc
- mergeFile
- mergeLink
- mergeMetadata
- parseItemLifecycleDates
- refreshLoc
- toCollectionParams
Constructors
constructor
• new LocRequestState(locSharedState
, request
, legalOfficerCase
, locIssuers
, invitedContributors
): LocRequestState
Parameters
Name | Type |
---|---|
locSharedState | LocSharedState |
request | LocRequest |
legalOfficerCase | undefined | LegalOfficerCase |
locIssuers | LocVerifiedIssuers |
invitedContributors | ValidAccountId [] |
Returns
Overrides
Defined in
packages/client/src/Loc.ts:766
Properties
invitedContributors
• Protected
Readonly
invitedContributors: ValidAccountId
[]
Defined in
packages/client/src/Loc.ts:763
legalOfficerCase
• Protected
Optional
Readonly
legalOfficerCase: LegalOfficerCase
Defined in
packages/client/src/Loc.ts:761
locIssuers
• Protected
Readonly
locIssuers: LocVerifiedIssuers
Defined in
packages/client/src/Loc.ts:762
locSharedState
• Protected
Readonly
locSharedState: LocSharedState
Defined in
packages/client/src/Loc.ts:759
owner
• Readonly
owner: LegalOfficerClass
Defined in
packages/client/src/Loc.ts:764
request
• Protected
Readonly
request: LocRequest
Defined in
packages/client/src/Loc.ts:760
Accessors
discarded
• get
discarded(): boolean
Returns
boolean
Description
True if this state was discarded
Inherited from
State.discarded
Defined in
packages/client/src/State.ts:24
locId
• get
locId(): UUID
Returns
UUID
Defined in
packages/client/src/Loc.ts:781
Methods
_withLocs
▸ _withLocs<T
>(locsState
, constructor
): T
Type parameters
Name | Type |
---|---|
T | extends LocRequestState |
Parameters
Name | Type |
---|---|
locsState | LocsState |
constructor | (locSharedState : LocSharedState , request : LocRequest , legalOfficerCase : undefined | LegalOfficerCase , locIssuers : LocVerifiedIssuers , invitedContributors : ValidAccountId []) => T |
Returns
T
Defined in
packages/client/src/Loc.ts:1096
checkHash
▸ checkHash(hash
): Promise
<CheckHashResult
>
Parameters
Name | Type |
---|---|
hash | Hash |
Returns
Promise
<CheckHashResult
>
Defined in
packages/client/src/Loc.ts:869
data
▸ data(): LocData
Returns
Defined in
packages/client/src/Loc.ts:839
discard
▸ discard(next
): void
Parameters
Name | Type |
---|---|
next | undefined | State |
Returns
void
Description
Discards current state. One must discard the state only
if the state transition was successfully executed. It may be safer to
use discardOnSuccess
.
Inherited from
Defined in
packages/client/src/State.ts:43
discardOnSuccess
▸ discardOnSuccess<T
, U
>(action
): Promise
<U
>
Type parameters
Name | Type |
---|---|
T | extends State |
U | extends State = T |
Parameters
Name | Type | Description |
---|---|---|
action | (current : T ) => Promise <U > | The state transition logic producing next state |
Returns
Promise
<U
>
Next state if state transition logic execution did not throw
Descripiton
Discards current state only if given state transition logic executed successfully (i.e. without throwing an error).
Inherited from
Defined in
packages/client/src/State.ts:55
ensureCurrent
▸ ensureCurrent(): void
Returns
void
Description
Throws an error if this state was discarded. This should be called by all public methods of client class.
Inherited from
Defined in
packages/client/src/State.ts:32
finalizeOnSuccess
▸ finalizeOnSuccess<T
>(action
): Promise
<void
>
Type parameters
Name | Type |
---|---|
T | extends State |
Parameters
Name | Type | Description |
---|---|---|
action | (current : T ) => Promise <void > | The state transition logic producing next state |
Returns
Promise
<void
>
Next state if state transition logic execution did not throw
Descripiton
Finalizes (i.e. replaces with no new state) current state only if given state transition logic executed successfully (i.e. without throwing an error).
Inherited from
Defined in
packages/client/src/State.ts:117
getCurrentState
▸ getCurrentState(): undefined
| State
Returns
undefined
| State
This state if not discareded or the current state or undefined when there is no current state.
Description
If the state has been discarded, provides the replacing current state if any.
Inherited from
Defined in
packages/client/src/State.ts:90
getCurrentStateOrThrow
▸ getCurrentStateOrThrow(): State
Returns
Inherited from
Defined in
packages/client/src/State.ts:102
getFile
▸ getFile(hash
): Promise
<TypedFile
>
Parameters
Name | Type |
---|---|
hash | Hash |
Returns
Promise
<TypedFile
>
Defined in
packages/client/src/Loc.ts:1103
isLogionData
▸ isLogionData(): boolean
Returns
boolean
Defined in
packages/client/src/Loc.ts:864
isLogionIdentity
▸ isLogionIdentity(): boolean
Returns
boolean
Defined in
packages/client/src/Loc.ts:859
isOwner
▸ isOwner(account?
): boolean
Parameters
Name | Type |
---|---|
account? | ValidAccountId |
Returns
boolean
Defined in
packages/client/src/Loc.ts:1112
isRequester
▸ isRequester(account?
): boolean
Parameters
Name | Type |
---|---|
account? | ValidAccountId |
Returns
boolean
Defined in
packages/client/src/Loc.ts:1107
isVerifiedIssuer
▸ isVerifiedIssuer(account?
): boolean
Parameters
Name | Type |
---|---|
account? | ValidAccountId |
Returns
boolean
Defined in
packages/client/src/Loc.ts:1117
locsState
▸ locsState(): LocsState
Returns
Defined in
packages/client/src/Loc.ts:835
refresh
▸ refresh(): Promise
<LocRequestState
>
Returns
Promise
<LocRequestState
>
Defined in
packages/client/src/Loc.ts:823
supersededLoc
▸ supersededLoc(): Promise
<undefined
| VoidedLoc
>
Returns
Promise
<undefined
| VoidedLoc
>
Defined in
packages/client/src/Loc.ts:851
syncDiscardOnSuccess
▸ syncDiscardOnSuccess<T
, U
>(action
): U
Type parameters
Name | Type |
---|---|
T | extends State |
U | extends State = T |
Parameters
Name | Type | Description |
---|---|---|
action | (current : T ) => U | The state transition logic producing next state |
Returns
U
Next state if state transition logic execution did not throw
Descripiton
Same as discardOnSuccess
but with a synchronous action.
Inherited from
Defined in
packages/client/src/State.ts:73
withLocs
▸ withLocs(locsState
): LocRequestState
Parameters
Name | Type |
---|---|
locsState | LocsState |
Returns
Defined in
packages/client/src/Loc.ts:1094
buildLocData
▸ buildLocData(api
, legalOfficerCase
, request
, locIssuers
, invitedContributors
): LocData
Parameters
Name | Type |
---|---|
api | LogionNodeApiClass |
legalOfficerCase | undefined | LegalOfficerCase |
request | LocRequest |
locIssuers | LocVerifiedIssuers |
invitedContributors | ValidAccountId [] |
Returns
Defined in
packages/client/src/Loc.ts:843
checkHash
▸ checkHash(loc
, hash
): CheckHashResult
Parameters
Name | Type |
---|---|
loc | LocData |
hash | Hash |
Returns
Defined in
packages/client/src/Loc.ts:873
createFromLoc
▸ createFromLoc(locSharedState
, request
, legalOfficerCase
, locIssuers
, invitedContributors
): Promise
<OnchainLocState
>
Parameters
Name | Type |
---|---|
locSharedState | LocSharedState |
request | LocRequest |
legalOfficerCase | LegalOfficerCase |
locIssuers | LocVerifiedIssuers |
invitedContributors | ValidAccountId [] |
Returns
Promise
<OnchainLocState
>
Defined in
packages/client/src/Loc.ts:800
createFromRequest
▸ createFromRequest(locSharedState
, request
, locIssuers
, invitedContributors
, legalOfficerCase?
): Promise
<AnyLocState
>
Parameters
Name | Type |
---|---|
locSharedState | LocSharedState |
request | LocRequest |
locIssuers | LocVerifiedIssuers |
invitedContributors | ValidAccountId [] |
legalOfficerCase? | LegalOfficerCase |
Returns
Promise
<AnyLocState
>
Defined in
packages/client/src/Loc.ts:785
dataFromRequest
▸ dataFromRequest(api
, request
, locIssuers
, invitedContributors
): LocData
Parameters
Name | Type |
---|---|
api | LogionNodeApiClass |
request | LocRequest |
locIssuers | LocVerifiedIssuers |
invitedContributors | ValidAccountId [] |
Returns
Defined in
packages/client/src/Loc.ts:891
dataFromRequestAndLoc
▸ dataFromRequestAndLoc(api
, request
, loc
, locIssuers
, invitedContributors
): LocData
Parameters
Name | Type |
---|---|
api | LogionNodeApiClass |
request | LocRequest |
loc | LegalOfficerCase |
locIssuers | LocVerifiedIssuers |
invitedContributors | ValidAccountId [] |
Returns
Defined in
packages/client/src/Loc.ts:933
mergeFile
▸ mergeFile(api
, backendFile
, chainLoc?
): MergedFile
Parameters
Name | Type |
---|---|
api | LogionNodeApiClass |
backendFile | LocFile |
chainLoc? | LegalOfficerCase |
Returns
Defined in
packages/client/src/Loc.ts:1024
mergeLink
▸ mergeLink(api
, backendLink
, chainLoc?
): MergedLink
Parameters
Name | Type |
---|---|
api | LogionNodeApiClass |
backendLink | LocLink |
chainLoc? | LegalOfficerCase |
Returns
Defined in
packages/client/src/Loc.ts:1063
mergeMetadata
▸ mergeMetadata(api
, backendMetadataItem
, chainLoc?
): MergedMetadataItem
Parameters
Name | Type |
---|---|
api | LogionNodeApiClass |
backendMetadataItem | LocMetadataItem |
chainLoc? | LegalOfficerCase |
Returns
Defined in
packages/client/src/Loc.ts:978
parseItemLifecycleDates
▸ parseItemLifecycleDates(args
): ItemLifecycle
Parameters
Name | Type |
---|---|
args | { acknowledgedByOwner : boolean ; acknowledgedByVerifiedIssuer : boolean ; published : boolean } & ItemLifecycle |
Returns
ItemLifecycle
Defined in
packages/client/src/Loc.ts:1009
refreshLoc
▸ refreshLoc(locSharedState
, request
, loc
, locIssuers
, invitedContributors
): Promise
<OnchainLocState
>
Parameters
Name | Type |
---|---|
locSharedState | LocSharedState |
request | LocRequest |
loc | undefined | LegalOfficerCase |
locIssuers | LocVerifiedIssuers |
invitedContributors | ValidAccountId [] |
Returns
Promise
<OnchainLocState
>
Defined in
packages/client/src/Loc.ts:804
toCollectionParams
▸ toCollectionParams(collectionParams
): undefined
| CollectionParams
Parameters
Name | Type |
---|---|
collectionParams | undefined | BackendCollectionParams |
Returns
undefined
| CollectionParams