activiti

package module
v0.0.16 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 29, 2023 License: MIT Imports: 10 Imported by: 0

README

Go Client For Activiti cloud v7.x Rest API

Go-activiti-rest client offers a library for interacting with Activiti6 server from Go applications. If you write applications in Golang and integrate them with Activiti7 then go-activiti-rest client will be uniquely useful.

come from jumpjumpbean/go-activiti-rest


Install

go get github.com/lihongchen/go-activiti-rest

Importing

import github.com/lihongchen/go-activiti-rest

Example

package main

import (
	"github.com/lihongchen/go-activiti-rest"
)

func main(){
	// Initialize client
	c, err := activiti.NewClient("kermit", "kermit",  "http://127.0.0.1:8080/activiti-rest/service")
	if err != nil {
		panic(err)
	}
	
	_, err = c.GetUser("fozzie")
	if err != nil {
		panic(err)
	}

	_, err = c.GetUsers()
	if err != nil {
		panic(err)
	}
	
	u := activiti.ActUser{
		ID:"jumpjumpbean",
		FirstName:"jump",
		LastName:"bean",
		Email:"jumpjumpbean@activiti.org",
		Password:"jumpjumpbean",
	}

	_, err = c.CreateUser(u)
	if err != nil {
		panic(err)
	}

	_, err = c.UpdateUser(u)
	if err != nil {
		panic(err)
	}
	
	err = c.DeleteUser("jumpjumpbean")
	if err != nil {
		panic(err)
	}
}

REST API List

序号REST API Item Function
2.1. List of DeploymentsDeployments列表
2.2. Get a deployment获取Deployment
2.3. Create a new deployment创建新的Deployment
2.4. Delete a deployment删除Deployment
2.5. List resources in a deployment列出Deployment中的资源
2.6. Get a deployment resource获取Deployment资源
2.7. Get a deployment resource content获取Deployment资源内容

Process Definitions

序号REST API Item Function
3.1. List of process definitions流程定义列表
3.2. Get a process definition获取流程定义
3.3. Update category for a process definition流程定义的更新类别
3.4. Get a process definition resource content获取进程定义资源内容
3.5. Get a process definition BPMN model获取进程定义 BPMN 模型
3.6. Suspend a process definition暂停进程定义
3.7. Activate a process definition激活流程定义
3.8. Get all candidate starters for a process-definition获得所有候选者的过程
3.9. Add a candidate starter to a process definition在流程定义中添加候选启动器
3.10. Delete a candidate starter from a process definition从进程定义中删除候选启动器
3.11. Get a candidate starter from a process definition从流程定义中获取候选起始项

Models

序号REST API Item Function
4.1. Get a list of models获取模型列表
4.2. Get a model获取模型
4.3. Update a model更新模型
4.4. Create a model创建模型
4.5. Delete a model删除模型
4.6. Get the editor source for a model获取模型的编辑器源
4.7. Set the editor source for a model为模型设置编辑器源
4.8. Get the extra editor source for a model获取模型的额外编辑器源
4.9. Set the extra editor source for a model为模型设置额外的编辑器源

Process Instances

序号REST API Item Function
5.1. Get a process instance获取流程实例
5.2. Delete a process instance删除流程实例
5.3. Activate or suspend a process instance激活或挂起流程实例
5.4. Start a process instance启动流程实例
5.5. List of process instances流程实例列表
5.6. Query process instances查询流程实例
5.7. Get diagram for a process instance获取流程实例的关系图
5.8. Get involved people for process instance参与流程实例的人员
5.9. Add an involved user to a process instance将涉及的用户添加到流程实例
5.10. Remove an involved user to from process instance将涉及的用户从流程实例中删除
5.11. List of variables for a process instance流程实例的变量列表
5.12. Get a variable for a process instance获取流程实例的变量
5.13. Create (or update) variables on a process instance创建
5.14. Update a single variable on a process instance更新流程实例上的单个变量
5.15. Create a new binary variable on a process-instance在进程上创建新的二进制变量
5.16. Update an existing binary variable on a process-instance更新进程中的现有二进制变量

Executions

序号REST API Item Function
6.1. Get an execution获得Execution
6.2. Execute an action on an execution在Execution上执行操作
6.3. Get active activities in an execution在执行过程中获取活动
6.4. List of executionsExecution列表
6.5. Query executions查询执行
6.6. List of variables for an execution执行变量列表
6.7. Get a variable for an execution获取用于执行的变量
6.8. Create (or update) variables on an execution创建
6.9. Update a variable on an execution更新Execution中的变量
6.10. Create a new binary variable on an execution在Execution中创建新的二进制变量
6.11. Update an existing binary variable on a process-instance更新Process-instance中的现有二进制变量

Tasks

序号REST API Item Function
7.1. Get a task获取任务
7.2. List of tasks任务清单
7.3. Query for tasks查询任务
7.4. Update a task更新任务
7.5. Task actions任务行动
7.6. Delete a task删除任务
7.7. Get all variables for a task获取任务的所有变量
7.8. Get a variable from a task从任务中获取变量
7.9. Get the binary data for a variable获取变量的二进制数据
7.10. Create new variables on a task在任务上创建新变量
7.11. Create a new binary variable on a task在任务上创建新的二进制变量
7.12. Update an existing variable on a task更新任务的现有变量
7.13. Updating a binary variable on a task更新任务的二进制变量
7.14. Delete a variable on a task删除任务上的变量
7.15. Delete all local variables on a task删除任务中的所有局部变量
7.16. Get all identity links for a task获取任务的所有标识链接
7.17. Get all identitylinks for a task for either groups or users为组或用户获取任务的所有 identitylinks
7.18. Get a single identity link on a task在任务上获取单个标识链接
7.19. Create an identity link on a task在任务上创建标识链接
7.20. Delete an identity link on a task删除任务上的标识链接
7.21. Create a new comment on a task创建新的任务注释
7.22. Get all comments on a task获取任务的所有注释
7.23. Get a comment on a task获取任务的注释
7.24. Delete a comment on a task删除任务的注释
7.25. Get all events for a task获取任务的所有事件
7.26. Get an event on a task在任务中获取事件
7.27. Create a new attachment on a task, containing a link to an external resource在任务上创建新附件, 包含指向外部资源的链接
7.28. Create a new attachment on a task, with an attached file使用附加文件在任务上创建新附件
7.29. Get all attachments on a task获取任务的所有附件
7.30. Get an attachment on a task获取任务的附件
7.31. Get the content for an attachment获取附件的内容
7.32. Delete an attachment on a task删除任务的附件

History

序号REST API Item Function
8.1. Get a historic process instance获取历史过程实例
8.2. List of historic process instances历史进程实例列表
8.3. Query for historic process instances查询历史进程实例
8.4. Delete a historic process instance删除历史进程实例
8.5. Get the identity links of a historic process instance获取历史进程实例的标识链接
8.6. Get the binary data for a historic process instance variable获取历史进程实例变量的二进制数据
8.7. Create a new comment on a historic process instance创建一个历史进程实例的新注释
8.8. Get all comments on a historic process instance获取历史过程实例的所有注释
8.9. Get a comment on a historic process instance获取一个历史过程实例的注释
8.10. Delete a comment on a historic process instance删除历史进程实例的注释
8.11. Get a single historic task instance获取单个历史任务实例
8.12. Get historic task instances获取历史任务实例
8.13. Query for historic task instances查询历史任务实例
8.14. Delete a historic task instance删除历史任务实例
8.15. Get the identity links of a historic task instance获取历史任务实例的标识链接
8.16. Get the binary data for a historic task instance variable获取历史任务实例变量的二进制数据
8.17. Get historic activity instances获取历史活动实例
8.18. Query for historic activity instances查询历史活动实例
8.19. List of historic variable instances历史变量实例列表
8.20. Query for historic variable instances查询历史变量实例
8.21. Get historic detail获取历史细节
8.22. Query for historic details查询历史细节
8.23. Get the binary data for a historic detail variable获取历史细节变量的二进制数据

Forms

序号REST API Item Function
9.1. Get form data获取表单数据
9.2. Submit task form data提交任务表单数据

Database tables

序号REST API Item Function
10.1. List of tables表格一览表
10.2. Get a single table获取单个表
10.3. Get column info for a single table获取单个表的列信息
10.4. Get row data for a single table获取单个表的行数据

Engine

序号REST API Item Function
11.1. Get engine properties获取引擎属性
11.2. Get engine info获取引擎信息

Runtime

序号REST API Item Function
12.1. Signal event received收到的信号事件

Jobs

序号REST API Item Function
13.1. Get a single job获得一份单独的工作
13.2. Delete a job删除作业
13.3. Execute a single job执行单个作业
13.4. Get the exception stacktrace for a job获取作业的异常堆栈
13.5. Get a list of jobs获取工作列表

Users

序号REST API Item Function
14.1. Get a single user获取单个用户
14.2. Get a list of users获取用户列表
14.3. Update a user更新用户
14.4. Create a user创建用户
14.5. Delete a user删除用户
14.6. Get a user’s picture获取用户的图片
14.7. Updating a user’s picture更新用户图片
14.8. List a user’s info列出用户信息
14.9. Get a user’s info获取用户信息
14.10. Update a user’s info更新用户信息
14.11. Create a new user’s info entry创建新用户的信息条目
14.12. Delete a user’s info删除用户信息

Groups

序号REST API Item Function
15.1. Get a single group获取单个组
15.2. Get a list of groups获取组列表
15.3. Update a group更新组
15.4. Create a group创建组
15.5. Delete a group删除组
15.6. Get members in a group获取组中的成员
15.7. Add a member to a group向组中添加成员
15.8. Delete a member from a group从组中删除成员

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type ActClient

type ActClient struct {
	Client  *http.Client
	Token   string
	BaseURL string
	Log     io.Writer // If user set log file name all requests will be logged there
}

Client represents a Activiti 6.x REST API Client

func NewClient

func NewClient(token string, baseURL string) (*ActClient, error)

NewClient returns new Client struct BaseURL is the activiti rest api url, for example 'http://localhost:8080'

func (*ActClient) AdminSetProcessVariables added in v0.0.11

func (c *ActClient) AdminSetProcessVariables(pid string, variables map[string]interface{}) error

AdminSetProcessVariables admin设置流程全局变量

func (*ActClient) Cancel added in v0.0.8

func (c *ActClient) Cancel(key string) error

Cancel a process instance by process instance key

func (*ActClient) CreateUser

func (c *ActClient) CreateUser(u ActUser) (*ActUser, error)

CreateUser creates a user in activiti Endpoint: POST identity/users

func (*ActClient) DeleteUser

func (c *ActClient) DeleteUser(uid string) error

DeleteUser deletes a user in activiti Endpoint: DELETE identity/users/{userId}

func (*ActClient) GetImg added in v0.0.3

func (c *ActClient) GetImg(req *http.Request, v interface{}) ([]byte, error)

func (*ActClient) GetImgWithBasicAuth added in v0.0.3

func (c *ActClient) GetImgWithBasicAuth(req *http.Request, v interface{}) ([]byte, error)

SendWithBasicAuth makes a request to the API using username:password basic auth

func (*ActClient) GetProcessDefinition

func (c *ActClient) GetProcessDefinition(pid string) (*ActProcessDefinition, error)

GetProcessDefinition retrieves process definition by ID Endpoint: GET repository/process-definitions/{processDefinitionId}

func (*ActClient) GetProcessDefinitionMeta added in v0.0.4

func (c *ActClient) GetProcessDefinitionMeta(pid string) (*ActProcessDefinitionMeta, error)

GetProcessDefinitionMeta 获取process definition 元数据

func (*ActClient) GetProcessDefinitions

func (c *ActClient) GetProcessDefinitions() (ActListProcessDefinitions, error)

GetProcessDefinitions retrieves all process definitions Endpoint: GET repository/process-definitions

func (*ActClient) GetProcessDiagram added in v0.0.3

func (c *ActClient) GetProcessDiagram(pid string) ([]byte, error)

GetProcessInstance retrieves process instance by ID Endpoint: GET runtime/process-instances/{processInstanceId}

func (*ActClient) GetProcessInstance

func (c *ActClient) GetProcessInstance(pid string) (*ActProcessInstance, error)

GetProcessInstance retrieves process instance by ID Endpoint: GET runtime/process-instances/{processInstanceId}

func (*ActClient) GetProcessInstances

func (c *ActClient) GetProcessInstances() (*ActListProcessInstances, error)

GetProcessInstances retrieves all process instances Endpoint: GET runtime/process-instances

func (*ActClient) GetTask

func (c *ActClient) GetTask(tid string) (*ActTask, error)

GetTask retrieves task by ID Endpoint: GET runtime/tasks/{taskId}

func (*ActClient) GetTasks

func (c *ActClient) GetTasks() (*ActListTasks, error)

GetTasks retrieves all tasks Endpoint: GET runtime/tasks

func (*ActClient) GetUser

func (c *ActClient) GetUser(uid string) (*ActUser, error)

GetUser retrieves user by ID Endpoint: GET identity/users/{userId}

func (*ActClient) GetUsers

func (c *ActClient) GetUsers() (*ActUsers, error)

GetUsers retrieves all users Endpoint: GET identity/users

func (*ActClient) NewRequest

func (c *ActClient) NewRequest(method, url string, payload interface{}) (*http.Request, error)

NewRequest constructs a request Convert payload to a JSON

func (*ActClient) ProcessInstancesTasks added in v0.0.14

func (c *ActClient) ProcessInstancesTasks(key string) (*ActListTasks, error)

获取流程使用已完成和未完成的所有任务

func (*ActClient) Send

func (c *ActClient) Send(req *http.Request, v interface{}) error

Send makes a request to the API, the response body will be unmarshaled into v, or if v is an io.Writer, the response will be written to it without decoding

func (*ActClient) SendWithBasicAuth

func (c *ActClient) SendWithBasicAuth(req *http.Request, v interface{}) error

SendWithBasicAuth makes a request to the API using username:password basic auth

func (*ActClient) SetHTTPClient

func (c *ActClient) SetHTTPClient(client *http.Client)

SetHTTPClient sets *http.Client to current client

func (*ActClient) SetLog

func (c *ActClient) SetLog(log io.Writer)

SetLog will set/change the output destination. If log file is set all requests and responses will be logged to this Writer

func (*ActClient) SetProcessVariables added in v0.0.4

func (c *ActClient) SetProcessVariables(pid string, variables map[string]interface{}) error

SetProcessVariables 设置流程全局变量

func (*ActClient) StartProcessInstanceById

func (c *ActClient) StartProcessInstanceById(pid string) (*ActProcessInstance, error)

Start a process instance by process definition id

func (*ActClient) StartProcessInstanceByKey

func (c *ActClient) StartProcessInstanceByKey(key string) (*ActProcessInstance, error)

Start a process instance by process definition key

func (*ActClient) StartProcessInstanceWithBusinessKeyAndVariables added in v0.0.2

func (c *ActClient) StartProcessInstanceWithBusinessKeyAndVariables(key, BusinessKey string, variables map[string]interface{}) (*ActProcessInstance, error)

Start a process instance by process definition key and variables

func (*ActClient) StartProcessInstanceWithVariables

func (c *ActClient) StartProcessInstanceWithVariables(key string, variables map[string]interface{}) (*ActProcessInstance, error)

Start a process instance by process definition key and variables

func (*ActClient) TaskActionAssign

func (c *ActClient) TaskActionAssign(tid string, assignee string) error

TaskAction complete/claim/delegate/resolve a task in activiti Endpoint: POST runtime/tasks/{taskId}

func (*ActClient) TaskActionClaim

func (c *ActClient) TaskActionClaim(tid string, assignee string) error

TaskAction complete/claim/delegate/resolve a task in activiti Endpoint: POST runtime/tasks/{taskId}

func (*ActClient) TaskActionComplete

func (c *ActClient) TaskActionComplete(tid string) error

TaskAction complete/claim/delegate/resolve a task in activiti Endpoint: POST runtime/tasks/{taskId}

func (*ActClient) TaskActionCompleteWithVariables added in v0.0.4

func (c *ActClient) TaskActionCompleteWithVariables(tid string, v map[string]string) error

TaskAction complete/claim/delegate/resolve a task in activiti Endpoint: POST runtime/tasks/{taskId}

func (*ActClient) UpdateUser

func (c *ActClient) UpdateUser(u ActUser) (*ActUser, error)

UpdateUser updates a user in activiti Endpoint: PUT identity/users/{userId}

type ActErrorResponse

type ActErrorResponse struct {
	Response *http.Response `json:"-"`
	// contains filtered or unexported fields
}

ErrorResponse https://www.activiti.org/userguide/#_error_response_body

func (*ActErrorResponse) Error

func (r *ActErrorResponse) Error() string

Error method implementation for ErrorResponse struct

type ActListProcessDefinitions

type ActListProcessDefinitions struct {
	List ActProcessDefinitions
}

type ActListProcessInstances

type ActListProcessInstances struct {
	List ActProcessInstances
}

type ActListTasks

type ActListTasks struct {
	List ActTasks
}

type ActProcessDefinition

type ActProcessDefinition struct {
	ProcessDefinition ProcessDefinition `json:"entry,omitempty"`
}

type ActProcessDefinitionMeta added in v0.0.5

type ActProcessDefinitionMeta struct {
	Entry ProcessDefinitionMeta `json:"entry,omitempty"`
}

type ActProcessDefinitions

type ActProcessDefinitions struct {
	ProcessDefinitions []ActProcessDefinition `json:"entries,omitempty"`
	Pagination         Pagination             `json:"pagination,omitempty"`
}

type ActProcessInstance

type ActProcessInstance struct {
	ProcessInstance ProcessInstance `json:"entry,omitempty"`
}

type ActProcessInstances

type ActProcessInstances struct {
	ProcessInstances []ActProcessInstance `json:"entries,omitempty"`
	Pagination       Pagination           `json:"pagination,omitempty"`
}

type ActStartProcessInstance

type ActStartProcessInstance struct {
	ProcessDefinitionId  string                 `json:"processDefinitionId,omitempty"`
	ProcessDefinitionKey string                 `json:"processDefinitionKey,omitempty"`
	PayloadType          string                 `json:"payloadType,omitempty"`
	BusinessKey          string                 `json:"businessKey,omitempty"`
	Name                 string                 `json:"name,omitempty"`
	Variables            map[string]interface{} `json:"variables,omitempty"`
}

type ActTask

type ActTask struct {
	Task Task `json:"entry,omitempty"`
}

type ActTasks

type ActTasks struct {
	Tasks      []ActTask  `json:"entries,omitempty"`
	Pagination Pagination `json:"pagination,omitempty"`
}

type ActUser

type ActUser struct {
	ID         string `json:"id,omitempty"`
	FirstName  string `json:"firstName,omitempty"`
	LastName   string `json:"lastName,omitempty"`
	Email      string `json:"email,omitempty"`
	URL        string `json:"url,omitempty"`
	PictureURL string `json:"pictureUrl,omitempty"`
	Password   string `json:"password,omitempty"`
}

type ActUsers

type ActUsers struct {
	Users []ActUser `json:"data,omitempty"`
	Total int       `json:"total,omitempty"`
	Start int       `json:"start,omitempty"`
	Sort  string    `json:"sort,omitempty"`
	Order string    `json:"order,omitempty"`
	Size  int       `json:"size,omitempty"`
}

type JSONTime

type JSONTime time.Time

JSONTime overrides MarshalJson method to format in ISO8601

func (JSONTime) MarshalJSON

func (t JSONTime) MarshalJSON() ([]byte, error)

MarshalJSON for JSONTime

type Pagination

type Pagination struct {
	Count        int  `json:"count,omitempty"`
	HasMoreItems bool `json:"hasMoreItems,omitempty"`
	MaxItems     int  `json:"maxItems,omitempty"`
	SkipCount    int  `json:"skipCount,omitempty"`
	TotalItems   int  `json:"totalItems,omitempty"`
}

type ProcessDefinition

type ProcessDefinition struct {
	ID              string `json:"id,omitempty"`
	Key             string `json:"key,omitempty"`
	Name            string `json:"name,omitempty"`
	Category        string `json:"category,omitempty"`
	Version         int    `json:"version,omitempty"`
	AppName         string `json:"appName,omitempty"`
	AppVersion      string `json:"appVersion,omitempty"`
	ServiceFullName string `json:"serviceFullName,omitempty"`
	ServiceName     string `json:"serviceName,omitempty"`
	ServiceType     string `json:"serviceType,omitempty"`
	ServiceVersion  string `json:"serviceVersion,omitempty"`
}

type ProcessDefinitionMeta added in v0.0.5

type ProcessDefinitionMeta struct {
	ID          string   `json:"id,omitempty"`
	Name        string   `json:"name,omitempty"`
	Description string   `json:"description,omitempty"`
	Version     int      `json:"version,omitempty"`
	Groups      []string `json:"groups,omitempty"`
}

type ProcessInstance

type ProcessInstance struct {
	ID                       string `json:"id,omitempty"`
	AppName                  string `json:"appName,omitempty"`
	Initiator                string `json:"initiator,omitempty"`
	ProcessDefinitionId      string `json:"processDefinitionId,omitempty"`
	ProcessDefinitionKey     string `json:"processDefinitionKey,omitempty"`
	ProcessDefinitionName    string `json:"processDefinitionName,omitempty"`
	ProcessDefinitionVersion int    `json:"processDefinitionVersion,omitempty"`
	ServiceFullName          string `json:"serviceFullName,omitempty"`
	ServiceName              string `json:"serviceName,omitempty"`
	ServiceType              string `json:"serviceType,omitempty"`
	ServiceVersion           string `json:"serviceVersion,omitempty"`
	StartDate                string `json:"startDate,omitempty"`
	Status                   string `json:"status,omitempty"`
}

type Task

type Task struct {
	Name                string `json:"name,omitempty"`
	ID                  string `json:"id,omitempty"`
	AppName             string `json:"appName,omitempty"`
	Assignee            string `json:"assignee,omitempty"`
	CreatedDate         string `json:"createdDate,omitempty"`
	FormKey             string `json:"formKey,omitempty"`
	ProcessDefinitionId string `json:"processDefinitionId,omitempty"`
	ProcessInstanceId   string `json:"processInstanceId,omitempty"`
	ServiceFullName     string `json:"serviceFullName,omitempty"`
	ServiceName         string `json:"serviceName,omitempty"`
	ServiceType         string `json:"serviceType,omitempty"`
	ServiceVersion      string `json:"serviceVersion,omitempty"`
	Status              string `json:"status,omitempty"`
	TaskDefinitionKey   string `json:"taskDefinitionKey,omitempty"`
	Priority            int    `json:"priority,omitempty"`
	Standalone          bool   `json:"standalone,omitempty"`
	BusinessKey         string `json:"businessKey,omitempty"`
	CompletedBy         string `json:"completedBy,omitempty"`
	CompletedDate       string `json:"completedDate,omitempty"`
}

type TaskAction

type TaskAction string
const (
	TASK_ACTION_COMPLETE TaskAction = "complete"
	TASK_ACTION_CLAIM    TaskAction = "claim"
	TASK_ACTION_DELEGATE TaskAction = "delegate"
	TASK_ACTION_RESOLVE  TaskAction = "resolve"
)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL