Primitive
Introduction
The Primitive ADO is a smart contract that is used to store data. It is a simple contract that allows us to store key/value pairs acting like a database.
The Primitive ADO can be set to one of the following:
Private: Only accessible by the contract owner of the ADO.
Public: Accessible by anyone.
Restricted: Only accessible to the key owner.
You can add a fee for setting keys using our rates.
Ado_type: primitive
Version: 2.0.2-beta.1
InstantiateMsg
restriction
Specifies who has access to add/delete data into the primitive ADO.
kernel_address
String
owner
Option<String>
Optional address to specify as the owner of the ADO being created. Defaults to the sender if not specified.
PrimitiveRestriction
An enum defining the different types of restrictions that can be set.
Private: Only accessible by the contract owner of the ADO.
Public: Accessible by anyone.
Restricted: Only accessible to the key owner (The address that first set the key).
ExecuteMsg
SetValue
Sets a value for the named key. When we need to extract the value that has been saved we would use the key.
If key
is not specified the default key ("default") will be used.
If SetValue
uses a name
that is already in use, the old value
is overwritten by the latest value.
key
Option<String>
The key for the data. The default key "default" will be used if it is not specified.
value
The value of the data.
Primitive
An enum to specify the type of data you are saving.
DeleteValue
Deletes the data attached to the specified key
.
If key
is not specified the default key ("default") will be used.
key
Option<String>
Thel key for the data to delete. If not specified, the default key "default" will be used.
UpdateRestriction
Changes the restriction set on the primitive.
Only available to the contract owner.
restriction
The new restriction type to use for the primitve ADO.
Rates
Sets a fee on adding values to the primitive.
Only available to the contract owner.
Only a Flat rate type is accepted.
You can read more here about setting rates.
Base Executes
The rest of the execute messages can be found in the ADO Base section.
QueryMsg
GetValue
Gets the value asociated to the specified key.
key
Option<String>
The key to get the value for. The default key is used if it is not specified.
GetValueResponse
key
String
The key you are getting the value for.
value
The value for the specified key.
AllKeys
Gets all the keys that are currently saved in the primitive ADO.
Returns a Vec<String> containing all the available keys.
OwnerKeys
Gets all the keys that belong to the specified owner address.
owner
The address to get the keys for.
Returns a Vec<String> containing all the keys belonging to the specified owner
.
Base Queries
The rest of the query messages can be found in the ADO Base section.