Documentation
¶
Index ¶
- Variables
- func ValidateHostEnvironment(mTLSEnabled bool, mode modes.DaprMode, namespace string) error
- type ActiveActorsCount
- type ActorHostedRequest
- type ActorLock
- type Actors
- type Config
- type CreateReminderRequest
- type CreateTimerRequest
- type DeleteReminderRequest
- type DeleteStateRequest
- type DeleteTimerRequest
- type GetReminderRequest
- type GetStateRequest
- type OperationType
- type Reminder
- type ReminderResponse
- type ReminderTrack
- type SaveStateRequest
- type StateResponse
- type TimerResponse
- type TransactionalDelete
- type TransactionalOperation
- type TransactionalRequest
- type TransactionalUpsert
Constants ¶
This section is empty.
Variables ¶
var ( // ErrActorDisposed is the error when runtime tries to hold the lock of the disposed actor. ErrActorDisposed error = errors.New("actor is already disposed") )
var (
ErrMaxStackDepthExceeded error = errors.New("Maximum stack depth exceeded")
)
Functions ¶
Types ¶
type ActiveActorsCount ¶ added in v0.5.0
ActiveActorsCount contain actorType and count of actors each type has
type ActorHostedRequest ¶
type ActorHostedRequest struct {
ActorID string `json:"actorId"`
ActorType string `json:"actorType"`
}
ActorHostedRequest is the request object for checking if an actor is hosted on this instance
type ActorLock ¶ added in v1.2.0
type ActorLock struct {
// contains filtered or unexported fields
}
func NewActorLock ¶ added in v1.2.0
type Actors ¶
type Actors interface {
Call(ctx context.Context, req *invokev1.InvokeMethodRequest) (*invokev1.InvokeMethodResponse, error)
Init() error
Stop()
GetState(ctx context.Context, req *GetStateRequest) (*StateResponse, error)
TransactionalStateOperation(ctx context.Context, req *TransactionalRequest) error
GetReminder(ctx context.Context, req *GetReminderRequest) (*Reminder, error)
CreateReminder(ctx context.Context, req *CreateReminderRequest) error
DeleteReminder(ctx context.Context, req *DeleteReminderRequest) error
CreateTimer(ctx context.Context, req *CreateTimerRequest) error
DeleteTimer(ctx context.Context, req *DeleteTimerRequest) error
IsActorHosted(ctx context.Context, req *ActorHostedRequest) bool
GetActiveActorsCount(ctx context.Context) []ActiveActorsCount
}
Actors allow calling into virtual actors as well as actor state management
func NewActors ¶
func NewActors( stateStore state.Store, appChannel channel.AppChannel, grpcConnectionFn func(address, id string, namespace string, skipTLS, recreateIfExists, enableSSL bool) (*grpc.ClientConn, error), config Config, certChain *dapr_credentials.CertChain, tracingSpec configuration.TracingSpec, features []configuration.FeatureSpec) Actors
NewActors create a new actors runtime with given config
type Config ¶
type Config struct {
HostAddress string
AppID string
PlacementAddresses []string
HostedActorTypes []string
Port int
HeartbeatInterval time.Duration
ActorDeactivationScanInterval time.Duration
ActorIdleTimeout time.Duration
DrainOngoingCallTimeout time.Duration
DrainRebalancedActors bool
Namespace string
Reentrancy app_config.ReentrancyConfig
}
Config is the actor runtime configuration
func NewConfig ¶
func NewConfig(hostAddress, appID string, placementAddresses []string, hostedActors []string, port int, actorScanInterval, actorIdleTimeout, ongoingCallTimeout string, drainRebalancedActors bool, namespace string, reentrancy app_config.ReentrancyConfig) Config
NewConfig returns the actor runtime configuration
type CreateReminderRequest ¶
type CreateReminderRequest struct {
Name string
ActorType string
ActorID string
Data interface{} `json:"data"`
DueTime string `json:"dueTime"`
Period string `json:"period"`
}
CreateReminderRequest is the request object to create a new reminder
type CreateTimerRequest ¶
type CreateTimerRequest struct {
Name string
ActorType string
ActorID string
DueTime string `json:"dueTime"`
Period string `json:"period"`
Callback string `json:"callback"`
Data interface{} `json:"data"`
}
CreateTimerRequest is the request object to create a new timer
type DeleteReminderRequest ¶
DeleteReminderRequest is the request object for deleting a reminder
type DeleteStateRequest ¶
type DeleteStateRequest struct {
ActorID string `json:"actorId"`
ActorType string `json:"actorType"`
Key string `json:"key"`
}
DeleteStateRequest is the request object for deleting an actor state
type DeleteTimerRequest ¶
DeleteTimerRequest is a request object for deleting a timer
type GetReminderRequest ¶
GetReminderRequest is the request object to get an existing reminder
type GetStateRequest ¶
type GetStateRequest struct {
ActorID string `json:"actorId"`
ActorType string `json:"actorType"`
Key string `json:"key"`
}
GetStateRequest is the request object for getting actor state
type OperationType ¶
type OperationType string
OperationType describes a CRUD operation performed against a state store
const Delete OperationType = "delete"
Delete is a delete operation
const Upsert OperationType = "upsert"
Upsert is an update or create operation
type Reminder ¶
type Reminder struct {
ActorID string `json:"actorID,omitempty"`
ActorType string `json:"actorType,omitempty"`
Name string `json:"name,omitempty"`
Data interface{} `json:"data"`
Period string `json:"period"`
DueTime string `json:"dueTime"`
RegisteredTime string `json:"registeredTime,omitempty"`
}
Reminder represents a persisted reminder for a unique actor
type ReminderResponse ¶
type ReminderResponse struct {
Data interface{} `json:"data"`
DueTime string `json:"dueTime"`
Period string `json:"period"`
}
ReminderResponse is the payload that is sent to an Actor SDK API for execution
type ReminderTrack ¶
type ReminderTrack struct {
LastFiredTime string `json:"lastFiredTime"`
}
ReminderTrack is a persisted object that keeps track of the last time a reminder fired
type SaveStateRequest ¶
type SaveStateRequest struct {
ActorID string `json:"actorId"`
ActorType string `json:"actorType"`
Key string `json:"key"`
Value interface{} `json:"value"`
}
SaveStateRequest is the request object for saving an actor state
type StateResponse ¶
type StateResponse struct {
Data []byte `json:"data"`
}
StateResponse is the response returned from getting an actor state
type TimerResponse ¶
type TimerResponse struct {
Callback string `json:"callback"`
Data interface{} `json:"data"`
DueTime string `json:"dueTime"`
Period string `json:"period"`
}
TimerResponse is the response object send to an Actor SDK API when a timer fires
type TransactionalDelete ¶
type TransactionalDelete struct {
Key string `json:"key"`
}
TransactionalDelete defined a delete operation
type TransactionalOperation ¶
type TransactionalOperation struct {
Operation OperationType `json:"operation"`
Request interface{} `json:"request"`
}
TransactionalOperation is the request object for a state operation participating in a transaction
type TransactionalRequest ¶
type TransactionalRequest struct {
Operations []TransactionalOperation `json:"operations"`
ActorType string
ActorID string
}
TransactionalRequest describes a set of stateful operations for a given actor that are performed in a transactional manner
type TransactionalUpsert ¶
type TransactionalUpsert struct {
Key string `json:"key"`
Value interface{} `json:"value"`
}
TransactionalUpsert defines a key/value pair for an upsert operation
Source Files
¶
- actor.go
- actor_hosted_request.go
- actor_lock.go
- actors.go
- config.go
- create_reminder_request.go
- create_timer_request.go
- delete_reminder_request.go
- delete_state_request.go
- delete_timer_request.go
- get_reminder_request.go
- get_state_request.go
- reminder.go
- reminder_response.go
- reminder_track.go
- save_state_request.go
- state_response.go
- timer_response.go
- transactional_state_request.go