Documentation ¶
Index ¶
- type BridgeResource
- type CSAKeyResource
- type Check
- type CronSpec
- type DirectRequestSpec
- type ETHKeyResource
- type EthTxResource
- type ExplorerStatus
- type FeedsManagerResource
- type FluxMonitorSpec
- type JAID
- type JobError
- type JobResource
- type JobSpecType
- type KeeperSpec
- type NewETHKeyOption
- type OCRKeysBundleResource
- type OffChainReportingSpec
- type P2PKeyResource
- type PipelineSpec
- type ServiceLogConfigResource
- type UserResource
- type VRFKeyResource
- type VRFSpec
- type WebhookSpec
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type BridgeResource ¶
type BridgeResource struct { JAID Name string `json:"name"` URL string `json:"url"` Confirmations uint32 `json:"confirmations"` // The IncomingToken is only provided when creating a Bridge IncomingToken string `json:"incomingToken,omitempty"` OutgoingToken string `json:"outgoingToken"` MinimumContractPayment *assets.Link `json:"minimumContractPayment"` CreatedAt time.Time `json:"createdAt"` }
BridgeResource represents a Bridge JSONAPI resource.
func NewBridgeResource ¶
func NewBridgeResource(b models.BridgeType) *BridgeResource
NewBridgeResource constructs a new BridgeResource
func (BridgeResource) GetName ¶
func (r BridgeResource) GetName() string
GetName implements the api2go EntityNamer interface
type CSAKeyResource ¶
type CSAKeyResource struct { JAID PubKey string `json:"publicKey"` CreatedAt time.Time `json:"createdAt"` UpdatedAt time.Time `json:"updatedAt"` }
CSAKeyResource represents a CSA key JSONAPI resource.
func NewResource ¶
func NewResource(key csakey.Key) *CSAKeyResource
func NewResources ¶
func NewResources(keys []csakey.Key) []CSAKeyResource
func (CSAKeyResource) GetName ¶
func (CSAKeyResource) GetName() string
GetName implements the api2go EntityNamer interface
type Check ¶
type CronSpec ¶
type CronSpec struct { CronSchedule string `json:"schedule" tom:"schedule"` CreatedAt time.Time `json:"createdAt"` UpdatedAt time.Time `json:"updatedAt"` }
CronSpec defines the spec details of a Cron Job
func NewCronSpec ¶
NewCronSpec generates a new CronSpec from a job.CronSpec
type DirectRequestSpec ¶
type DirectRequestSpec struct { ContractAddress ethkey.EIP55Address `json:"contractAddress"` MinIncomingConfirmations clnull.Uint32 `json:"minIncomingConfirmations"` Initiator string `json:"initiator"` CreatedAt time.Time `json:"createdAt"` UpdatedAt time.Time `json:"updatedAt"` }
DirectRequestSpec defines the spec details of a DirectRequest Job
func NewDirectRequestSpec ¶
func NewDirectRequestSpec(spec *job.DirectRequestSpec) *DirectRequestSpec
NewDirectRequestSpec initializes a new DirectRequestSpec from a job.DirectRequestSpec
type ETHKeyResource ¶
type ETHKeyResource struct { JAID Address string `json:"address"` EthBalance *assets.Eth `json:"ethBalance"` LinkBalance *assets.Link `json:"linkBalance"` NextNonce int64 `json:"nextNonce"` IsFunding bool `json:"isFunding"` CreatedAt time.Time `json:"createdAt"` UpdatedAt time.Time `json:"updatedAt"` DeletedAt *time.Time `json:"deletedAt"` }
ETHKeyResource represents a ETH key JSONAPI resource. It holds the hex representation of the address plus its ETH & LINK balances
func NewETHKeyResource ¶
func NewETHKeyResource(k ethkey.Key, opts ...NewETHKeyOption) (*ETHKeyResource, error)
NewETHKeyResource constructs a new ETHKeyResource from a Key.
Use the functional options to inject the ETH and LINK balances
func (ETHKeyResource) GetName ¶
func (r ETHKeyResource) GetName() string
GetName implements the api2go EntityNamer interface
This is named as such for backwards compatibility with the operator ui TODO - Standardise this to ethKeys
type EthTxResource ¶
type EthTxResource struct { JAID State string `json:"state"` Data hexutil.Bytes `json:"data"` From *common.Address `json:"from"` GasLimit string `json:"gasLimit"` GasPrice string `json:"gasPrice"` Hash common.Hash `json:"hash"` Hex string `json:"rawHex"` Nonce string `json:"nonce"` SentAt string `json:"sentAt"` To *common.Address `json:"to"` Value string `json:"value"` }
EthTxResource represents a Ethereum Transaction JSONAPI resource.
func NewEthTxResource ¶
func NewEthTxResource(tx models.EthTx) EthTxResource
NewEthTxResource generates a EthTxResource from an Eth.Tx.
For backwards compatibility, there is no id set when initializing from an EthTx as the id being used was the EthTxAttempt Hash. This should really use it's proper id
func NewEthTxResourceFromAttempt ¶
func NewEthTxResourceFromAttempt(txa models.EthTxAttempt) EthTxResource
func (EthTxResource) GetName ¶
func (EthTxResource) GetName() string
GetName implements the api2go EntityNamer interface
type ExplorerStatus ¶
ExplorerStatus represents the connected server and status of the connection This is rendered as normal JSON (as opposed to a JSONAPI resource)
func NewExplorerStatus ¶
func NewExplorerStatus(statsPusher synchronization.StatsPusher) ExplorerStatus
NewExplorerStatus returns an initialized ExplorerStatus from the store
type FeedsManagerResource ¶
type FeedsManagerResource struct { JAID Name string `json:"name"` URI string `json:"uri"` PublicKey feeds.PublicKey `json:"publicKey"` JobTypes []string `json:"jobTypes"` Network string `json:"network"` CreatedAt time.Time `json:"createdAt"` }
FeedsManagerResource represents a Feeds Manager JSONAPI resource.
func NewFeedsManagerResource ¶
func NewFeedsManagerResource(ms feeds.FeedsManager) *FeedsManagerResource
NewFeedsManagerResource constructs a new FeedsManagerResource.
func NewFeedsManagerResources ¶
func NewFeedsManagerResources(mss []feeds.FeedsManager) []FeedsManagerResource
NewJobResources initializes a slice of JSONAPI feed manager resources
func (FeedsManagerResource) GetName ¶
func (r FeedsManagerResource) GetName() string
GetName implements the api2go EntityNamer interface
type FluxMonitorSpec ¶
type FluxMonitorSpec struct { ContractAddress ethkey.EIP55Address `json:"contractAddress"` Threshold float32 `json:"threshold"` AbsoluteThreshold float32 `json:"absoluteThreshold"` PollTimerPeriod string `json:"pollTimerPeriod"` PollTimerDisabled bool `json:"pollTimerDisabled"` IdleTimerPeriod string `json:"idleTimerPeriod"` IdleTimerDisabled bool `json:"idleTimerDisabled"` MinPayment *assets.Link `json:"minPayment"` CreatedAt time.Time `json:"createdAt"` UpdatedAt time.Time `json:"updatedAt"` }
FluxMonitorSpec defines the spec details of a FluxMonitor Job
func NewFluxMonitorSpec ¶
func NewFluxMonitorSpec(spec *job.FluxMonitorSpec) *FluxMonitorSpec
NewFluxMonitorSpec initializes a new DirectFluxMonitorSpec from a job.FluxMonitorSpec
type JAID ¶
type JAID struct {
ID string `json:"-"`
}
JAID represents a JSON API ID. It implements the api2go MarshalIdentifier and UnmarshalIdentitier interface.
type JobError ¶
type JobError struct { ID int64 `json:"id"` Description string `json:"description"` Occurrences uint `json:"occurrences"` CreatedAt time.Time `json:"createdAt"` UpdatedAt time.Time `json:"updatedAt"` }
JobError represents errors on the job
func NewJobError ¶
type JobResource ¶
type JobResource struct { JAID Name string `json:"name"` Type JobSpecType `json:"type"` SchemaVersion uint32 `json:"schemaVersion"` MaxTaskDuration models.Interval `json:"maxTaskDuration"` ExternalJobID uuid.UUID `json:"externalJobID"` DirectRequestSpec *DirectRequestSpec `json:"directRequestSpec"` FluxMonitorSpec *FluxMonitorSpec `json:"fluxMonitorSpec"` CronSpec *CronSpec `json:"cronSpec"` OffChainReportingSpec *OffChainReportingSpec `json:"offChainReportingOracleSpec"` KeeperSpec *KeeperSpec `json:"keeperSpec"` VRFSpec *VRFSpec `json:"vrfSpec"` WebhookSpec *WebhookSpec `json:"webhookSpec"` PipelineSpec PipelineSpec `json:"pipelineSpec"` Errors []JobError `json:"errors"` }
JobResource represents a JobResource
func NewJobResource ¶
func NewJobResource(j job.Job) *JobResource
NewJobResource initializes a new JSONAPI job resource
func NewJobResources ¶
func NewJobResources(js []job.Job) []JobResource
NewJobResources initializes a slice of JSONAPI job resources
func (JobResource) GetName ¶
func (r JobResource) GetName() string
GetName implements the api2go EntityNamer interface
type JobSpecType ¶
type JobSpecType string
JobSpecType defines the the the spec type of the job
const ( DirectRequestJobSpec JobSpecType = "directrequest" FluxMonitorJobSpec JobSpecType = "fluxmonitor" OffChainReportingJobSpec JobSpecType = "offchainreporting" KeeperJobSpec JobSpecType = "keeper" CronJobSpec JobSpecType = "cron" VRFJobSpec JobSpecType = "vrf" WebhookJobSpec JobSpecType = "webhook" )
func (JobSpecType) String ¶
func (t JobSpecType) String() string
type KeeperSpec ¶
type KeeperSpec struct { ContractAddress ethkey.EIP55Address `json:"contractAddress"` FromAddress ethkey.EIP55Address `json:"fromAddress"` CreatedAt time.Time `json:"createdAt"` UpdatedAt time.Time `json:"updatedAt"` }
KeeperSpec defines the spec details of a Keeper Job
func NewKeeperSpec ¶
func NewKeeperSpec(spec *job.KeeperSpec) *KeeperSpec
NewKeeperSpec generates a new KeeperSpec from a job.KeeperSpec
type NewETHKeyOption ¶
type NewETHKeyOption func(*ETHKeyResource) error
NewETHKeyOption defines a functional option which allows customisation of the EthKeyResource
func SetETHKeyEthBalance ¶
func SetETHKeyEthBalance(ethBalance *assets.Eth) NewETHKeyOption
func SetETHKeyLinkBalance ¶
func SetETHKeyLinkBalance(linkBalance *assets.Link) NewETHKeyOption
type OCRKeysBundleResource ¶
type OCRKeysBundleResource struct { JAID OnChainSigningAddress ocrkey.OnChainSigningAddress `json:"onChainSigningAddress"` OffChainPublicKey ocrkey.OffChainPublicKey `json:"offChainPublicKey"` ConfigPublicKey ocrkey.ConfigPublicKey `json:"configPublicKey"` CreatedAt time.Time `json:"createdAt"` UpdatedAt time.Time `json:"updatedAt"` DeletedAt *time.Time `json:"deletedAt"` }
OCRKeysBundleResource represents a bundle of OCRs keys as JSONAPI resource
func NewOCRKeysBundleResource ¶
func NewOCRKeysBundleResource(bundle ocrkey.EncryptedKeyBundle) *OCRKeysBundleResource
func NewOCRKeysBundleResources ¶
func NewOCRKeysBundleResources(keys []ocrkey.EncryptedKeyBundle) []OCRKeysBundleResource
func (OCRKeysBundleResource) GetName ¶
func (r OCRKeysBundleResource) GetName() string
GetName implements the api2go EntityNamer interface
type OffChainReportingSpec ¶
type OffChainReportingSpec struct { ContractAddress ethkey.EIP55Address `json:"contractAddress"` P2PPeerID *p2pkey.PeerID `json:"p2pPeerID"` P2PBootstrapPeers pq.StringArray `json:"p2pBootstrapPeers"` IsBootstrapPeer bool `json:"isBootstrapPeer"` EncryptedOCRKeyBundleID *models.Sha256Hash `json:"keyBundleID"` TransmitterAddress *ethkey.EIP55Address `json:"transmitterAddress"` ObservationTimeout models.Interval `json:"observationTimeout"` BlockchainTimeout models.Interval `json:"blockchainTimeout"` ContractConfigTrackerSubscribeInterval models.Interval `json:"contractConfigTrackerSubscribeInterval"` ContractConfigTrackerPollInterval models.Interval `json:"contractConfigTrackerPollInterval"` ContractConfigConfirmations uint16 `json:"contractConfigConfirmations"` CreatedAt time.Time `json:"createdAt"` UpdatedAt time.Time `json:"updatedAt"` }
OffChainReportingSpec defines the spec details of a OffChainReporting Job
func NewOffChainReportingSpec ¶
func NewOffChainReportingSpec(spec *job.OffchainReportingOracleSpec) *OffChainReportingSpec
NewOffChainReportingSpec initializes a new OffChainReportingSpec from a job.OffchainReportingOracleSpec
type P2PKeyResource ¶
type P2PKeyResource struct { JAID PeerID string `json:"peerId"` PubKey string `json:"publicKey"` CreatedAt time.Time `json:"createdAt"` UpdatedAt time.Time `json:"updatedAt"` DeletedAt *time.Time `json:"deletedAt"` }
P2PKeyResource represents a P2P key JSONAPI resource.
func NewP2PKeyResource ¶
func NewP2PKeyResource(key p2pkey.EncryptedP2PKey) *P2PKeyResource
func NewP2PKeyResources ¶
func NewP2PKeyResources(keys []p2pkey.EncryptedP2PKey) []P2PKeyResource
func (P2PKeyResource) GetName ¶
func (P2PKeyResource) GetName() string
GetName implements the api2go EntityNamer interface
type PipelineSpec ¶
PipelineSpec defines the spec details of the pipeline
func NewPipelineSpec ¶
func NewPipelineSpec(spec *pipeline.Spec) PipelineSpec
NewPipelineSpec generates a new PipelineSpec from a pipeline.Spec
type ServiceLogConfigResource ¶
type ServiceLogConfigResource struct { JAID ServiceName []string `json:"serviceName"` LogLevel []string `json:"logLevel"` }
func (ServiceLogConfigResource) GetName ¶
func (r ServiceLogConfigResource) GetName() string
GetName implements the api2go EntityNamer interface
type UserResource ¶
type UserResource struct { JAID Email string `json:"email"` CreatedAt time.Time `json:"createdAt"` }
UserResource represents a User JSONAPI resource.
func NewUserResource ¶
func NewUserResource(u models.User) *UserResource
NewUserResource constructs a new UserResource.
A User does not have an ID primary key, so we must use the email
func (UserResource) GetName ¶
func (r UserResource) GetName() string
GetName implements the api2go EntityNamer interface
type VRFKeyResource ¶
type VRFKeyResource struct { JAID Compressed string `json:"compressed"` Uncompressed string `json:"uncompressed"` Hash string `json:"hash"` CreatedAt time.Time `json:"createdAt"` UpdatedAt time.Time `json:"updatedAt"` DeletedAt *time.Time `json:"deletedAt"` }
func NewVRFKeyResource ¶
func NewVRFKeyResource(key vrfkey.EncryptedVRFKey) *VRFKeyResource
func NewVRFKeyResources ¶
func NewVRFKeyResources(keys []*vrfkey.EncryptedVRFKey) []VRFKeyResource
func (VRFKeyResource) GetName ¶
func (VRFKeyResource) GetName() string
GetName implements the api2go EntityNamer interface
type VRFSpec ¶
type VRFSpec struct { CoordinatorAddress ethkey.EIP55Address `json:"coordinatorAddress"` PublicKey secp256k1.PublicKey `json:"publicKey"` Confirmations uint32 `json:"confirmations"` CreatedAt time.Time `json:"createdAt"` UpdatedAt time.Time `json:"updatedAt"` }
func NewVRFSpec ¶
type WebhookSpec ¶
type WebhookSpec struct { CreatedAt time.Time `json:"createdAt"` UpdatedAt time.Time `json:"updatedAt"` }
WebhookSpec defines the spec details of a Webhook Job
func NewWebhookSpec ¶
func NewWebhookSpec(spec *job.WebhookSpec) *WebhookSpec
NewWebhookSpec generates a new WebhookSpec from a job.WebhookSpec