net.sergeych.biserializer.BiSerializable
public class ListRole extends Role
Modifier and Type | Class | Description |
---|---|---|
static class |
ListRole.Mode |
Mode of combining roles
|
Role.RequiredMode
requiredAllReferences, requiredAnyReferences
Constructor | Description |
---|---|
ListRole() |
Create empty role combining other roles (sub-roles).
|
ListRole(java.lang.String name) |
Deprecated.
use
ListRole(String, Contract) instead |
ListRole(java.lang.String name,
int quorumSize,
@NonNull java.util.Collection<Role> roles) |
Deprecated.
|
ListRole(java.lang.String name,
Contract contract) |
Create empty role combining other roles (sub-roles).
|
ListRole(java.lang.String name,
Contract contract,
int quorumSize,
@NonNull java.util.Collection<Role> roles) |
Create new role combining other roles (sub-roles) in the "any N of" principle (
ListRole.Mode.QUORUM ). |
ListRole(java.lang.String name,
Contract contract,
ListRole.Mode mode,
@NonNull java.util.Collection<Role> roles) |
Create new role combining other roles (sub-roles)
|
ListRole(java.lang.String name,
ListRole.Mode mode,
@NonNull java.util.Collection<Role> roles) |
Deprecated.
|
Modifier and Type | Method | Description |
---|---|---|
void |
addAll(java.util.Collection<Role> roles) |
Adds sub-roles to combining role.
|
ListRole |
addRole(Role role) |
Adds sub-role to combining role.
|
void |
anonymize() |
If this role has public keys, they will be replaced with
AnonymousId . |
void |
deserialize(net.sergeych.tools.Binder data,
net.sergeych.biserializer.BiDeserializer deserializer) |
|
protected boolean |
equalsIgnoreNameAndRefs(Role otherRole) |
|
java.util.Set<AnonymousId> |
getAnonymousIds() |
Deprecated.
|
java.util.Set<com.icodici.crypto.KeyAddress> |
getKeyAddresses() |
Deprecated.
|
java.util.Set<KeyRecord> |
getKeyRecords() |
Deprecated.
|
java.util.Set<com.icodici.crypto.PublicKey> |
getKeys() |
Deprecated.
|
ListRole.Mode |
getMode() |
Returns mode of this role.
|
int |
getQuorum() |
|
java.util.Set<Role> |
getRoles() |
Get sub-roles of combining role.
|
void |
initWithDsl(net.sergeych.tools.Binder serializedRole) |
Initializes combining role from dsl.
|
boolean |
isAllowedForKeysQuantized(java.util.Set<? extends com.icodici.crypto.AbstractKey> keys) |
Check role is allowed to keys
|
boolean |
isValid() |
Check availability sub-roles of combining role.
|
net.sergeych.tools.Binder |
serialize(net.sergeych.biserializer.BiSerializer s) |
|
void |
setContract(Contract contract) |
Set role contract.
|
void |
setMode(ListRole.Mode newMode) |
Set mode to either
ListRole.Mode.ALL or ListRole.Mode.ANY , Quorum mode could be set only with setQuorum(int)
call, |
void |
setQuorum(int n) |
Set mode to
ListRole.Mode.QUORUM and quorum size to any n roles. |
java.lang.String |
toString() |
Get role as string.
|
addAllRequiredReferences, addRequiredReference, addRequiredReference, containReference, equalAddresses, equalAnonIds, equalKeys, equals, equalsIgnoreName, fromDslBinder, getAllAddresses, getComment, getContract, getKeyRecord, getName, getReferences, getSimpleAddress, getSpecialReferences, hashCode, isAllowedFor, isAllowedForKeys, isMatchingKeyAddress, isMatchingRole, linkAs, resolve, setComment
public ListRole()
public ListRole(java.lang.String name, Contract contract)
name
- is role namecontract
- is contract role belongs to@Deprecated public ListRole(java.lang.String name)
ListRole(String, Contract)
insteadname
- is role namepublic ListRole(java.lang.String name, Contract contract, ListRole.Mode mode, @NonNull java.util.Collection<Role> roles)
name
- is role namecontract
- is contract role belongs tomode
- is mode of sub-roles combining: "and", "or" and "any N of" principleroles
- is collection of sub-roles@Deprecated public ListRole(java.lang.String name, ListRole.Mode mode, @NonNull java.util.Collection<Role> roles)
name
- is role namemode
- is mode of sub-roles combining: "and", "or" and "any N of" principleroles
- is collection of sub-rolespublic ListRole(java.lang.String name, Contract contract, int quorumSize, @NonNull java.util.Collection<Role> roles)
ListRole.Mode.QUORUM
).name
- is role namecontract
- is contract role belongs toquorumSize
- is N in "any N of" principleroles
- is collection of sub-roles@Deprecated public ListRole(java.lang.String name, int quorumSize, @NonNull java.util.Collection<Role> roles)
ListRole.Mode.QUORUM
).name
- is role namequorumSize
- is N in "any N of" principleroles
- is collection of sub-rolespublic void addAll(java.util.Collection<Role> roles)
roles
- is collection of sub-rolespublic java.util.Set<Role> getRoles()
public ListRole addRole(Role role)
role
- is sub-rolepublic void setQuorum(int n)
ListRole.Mode.QUORUM
and quorum size to any n roles.n
- how many subroles set of key must be able to play to play this rolepublic int getQuorum()
public void setMode(ListRole.Mode newMode)
ListRole.Mode.ALL
or ListRole.Mode.ANY
, Quorum mode could be set only with setQuorum(int)
call,newMode
- mode to setjava.lang.IllegalArgumentException
- if mode other than ANY/ALL is specifiedpublic ListRole.Mode getMode()
public boolean isAllowedForKeysQuantized(java.util.Set<? extends com.icodici.crypto.AbstractKey> keys) throws Quantiser.QuantiserException
isAllowedForKeysQuantized
in class Role
keys
- is set of keysQuantiser.QuantiserException
public boolean isValid()
protected boolean equalsIgnoreNameAndRefs(Role otherRole)
equalsIgnoreNameAndRefs
in class Role
public void initWithDsl(net.sergeych.tools.Binder serializedRole)
initWithDsl
in class Role
serializedRole
- is Binder
from dsl with data of combining rolepublic void setContract(Contract contract)
setContract
in class Role
contract
- is role contract@Deprecated public java.util.Set<KeyRecord> getKeyRecords()
getKeyRecords
in class Role
PublicKey
)@Deprecated public java.util.Set<com.icodici.crypto.PublicKey> getKeys()
@Deprecated public java.util.Set<AnonymousId> getAnonymousIds()
getAnonymousIds
in class Role
AnonymousId
)@Deprecated public java.util.Set<com.icodici.crypto.KeyAddress> getKeyAddresses()
getKeyAddresses
in class Role
KeyAddress
)public java.lang.String toString()
toString
in class java.lang.Object
public void deserialize(net.sergeych.tools.Binder data, net.sergeych.biserializer.BiDeserializer deserializer)
deserialize
in interface net.sergeych.biserializer.BiSerializable
deserialize
in class Role
public net.sergeych.tools.Binder serialize(net.sergeych.biserializer.BiSerializer s)
public void anonymize()
AnonymousId
.