Storage DFMS

Storage DFMS

  • Getting Started
  • CLI
  • Guides
  • API Endpoints
  • Help

›Contract

Nodes

  • Create API node
  • Create API HTTP node

Contract

  • Compose Contract
  • Get Contract
  • List contracts
  • Ammends Contracts
  • Verify Contract
  • Accept Contract
  • Accepted Contract
  • Contract Invites
  • Finish Contract

Drive

  • Add
  • Get
  • Get File by CID
  • Copy
  • Move(Rename)
  • Make Dir
  • Stat
  • List
  • Remove
  • Flush
  • Clear

SuperContract

  • Deploy SuperContract
  • Execute SuperContract
  • SuperContract Results
  • List SuperContracts
  • Get SuperContract
  • SuperContract Executions
  • Deactivate SuperContract

Network

  • Node ID
  • Get Node Addresses
  • Connect to Node
  • Get Connected Peers
  • Disconnect from Node

Different flows

  • Guide of connection lifecycle
  • Guide of contract lifecycle
  • Guide of file lifecycle
  • Guide of SuperContract lifecycle

Contract Invites

Requirements

  • IDE or text editor
  • Have one owner node
  • Have one Drive contract

Example

Get invites to contract by a replicator.

import (
    "context"
    "fmt"
    "io"

    apihttp "github.com/proximax-storage/go-xpx-dfms-api-http"
)

func main() {
    // Replicator a new replicator API by given address
    replicator := apihttp.NewReplicatorAPI("127.0.0.1:64666")

    //New subscription
    sub, err := replicator.Contract().Invites(context.TODO())
    if err != nil {
        panic(err)
    }
    defer sub.Close()

    for {
        //Get next invite
        drvInvite, err := sub.Next(context.TODO())
        if err != nil && (err != io.EOF || err != context.Canceled) {
            panic(err)
        }

        //Print Drive contract
        fmt.Println(drvInvite)
    }
}
← Accepted ContractFinish Contract →
  • Requirements
  • Example
Storage DFMS
Roles
SDNSRNVerifierSC Executor
Built-in Features
DriveSuperContractChallengeRewards
Protocols
Cross-block protocolFair streaming
Algorithms
VerificationConsensus
CLI
dfms-clientdfms-replicatorsupercontracts
Giudes
ContractDriveSupercontractsNetwork
Copyright © 2021 ProximaX