orientdb

package
v0.25.0 Latest Latest
Warning

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

Go to latest
Published: Sep 12, 2019 License: Apache-2.0 Imports: 14 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func FilterToExpression added in v0.10.0

func FilterToExpression(f *filters.Filter, formatter func(string) string) string

FilterToExpression returns a OrientDB select expression based on filters

Types

type ClassDefinition added in v0.10.0

type ClassDefinition struct {
	Name         string     `json:"name"`
	SuperClass   string     `json:"superClass,omitempty"`
	SuperClasses []string   `json:"superClasses,omitempty"`
	Abstract     bool       `json:"abstract"`
	StrictMode   bool       `json:"strictmode"`
	Alias        string     `json:"alias,omitempty"`
	Properties   []Property `json:"properties,omitempty"`
	Indexes      []Index    `json:"indexes,omitempty"`
}

ClassDefinition describes a OrientDB class definition

type Client added in v0.10.0

type Client struct {
	sync.RWMutex
	// contains filtered or unexported fields
}

Client describes a OrientDB client database

func NewClient added in v0.10.0

func NewClient(url string, database string, username string, password string) (*Client, error)

NewClient creates a new OrientDB database client

func (*Client) AddEventListener added in v0.22.0

func (c *Client) AddEventListener(listener storage.EventListener)

AddEventListener add event listener

func (*Client) AlterProperty added in v0.10.0

func (c *Client) AlterProperty(className string, prop Property) error

AlterProperty modify a property

func (*Client) Connect added in v0.10.0

func (c *Client) Connect() error

Connect to the OrientDB server

func (*Client) CreateClass added in v0.10.0

func (c *Client) CreateClass(class ClassDefinition) error

CreateClass creates a new class

func (*Client) CreateDatabase added in v0.10.0

func (c *Client) CreateDatabase() (*Result, error)

CreateDatabase creates the root OrientDB Document

func (*Client) CreateDocument added in v0.10.0

func (c *Client) CreateDocument(doc interface{}) (*Result, error)

CreateDocument creates an OrientDB document

func (*Client) CreateDocumentClass added in v0.10.0

func (c *Client) CreateDocumentClass(class ClassDefinition) error

CreateDocumentClass creates a new OrientDB document class

func (*Client) CreateIndex added in v0.10.0

func (c *Client) CreateIndex(className string, index Index) error

CreateIndex creates a new Index

func (*Client) CreateProperty added in v0.10.0

func (c *Client) CreateProperty(className string, prop Property) error

CreateProperty creates a new class property

func (*Client) DeleteDocument added in v0.10.0

func (c *Client) DeleteDocument(id string) error

DeleteDocument delete an OrientDB document

func (*Client) DeleteDocumentClass added in v0.10.0

func (c *Client) DeleteDocumentClass(name string) error

DeleteDocumentClass delete an OrientDB document class

func (*Client) GetDatabase added in v0.10.0

func (c *Client) GetDatabase() (*Result, error)

GetDatabase returns the root OrientDB document

func (*Client) GetDocument added in v0.10.0

func (c *Client) GetDocument(id string) (*Result, error)

GetDocument retrieve a specific OrientDB document

func (*Client) GetDocumentClass added in v0.10.0

func (c *Client) GetDocumentClass(name string) (*DocumentClass, error)

GetDocumentClass returns an OrientDB document class

func (*Client) Query added in v0.10.0

func (c *Client) Query(obj string, query *filters.SearchQuery) (*Result, error)

Query the OrientDB based on filters

func (*Client) Request added in v0.10.0

func (c *Client) Request(method string, url string, body io.Reader) (*http.Response, error)

Request send a request to the OrientDB server

func (*Client) SQL added in v0.12.0

func (c *Client) SQL(query string) (*Result, error)

SQL Simple Query Language, send a query to the OrientDB server

func (*Client) Upsert added in v0.10.0

func (c *Client) Upsert(class string, doc interface{}, idkey string, idval string) (*Result, error)

Upsert updates or insert a key in an OrientDB document

type ClientInterface added in v0.12.0

type ClientInterface interface {
	Request(method string, url string, body io.Reader) (*http.Response, error)
	DeleteDocument(id string) error
	GetDocument(id string) (*Result, error)
	CreateDocument(doc interface{}) (*Result, error)
	Upsert(class string, doc interface{}, idkey string, idval string) (*Result, error)
	GetDocumentClass(name string) (*DocumentClass, error)
	AlterProperty(className string, prop Property) error
	CreateProperty(className string, prop Property) error
	CreateClass(class ClassDefinition) error
	CreateIndex(className string, index Index) error
	CreateDocumentClass(class ClassDefinition) error
	DeleteDocumentClass(name string) error
	GetDatabase() (*Result, error)
	CreateDatabase() (*Result, error)
	SQL(query string) (*Result, error)
	Query(obj string, query *filters.SearchQuery) (*Result, error)
	Connect() error
	AddEventListener(listener storage.EventListener)
}

ClientInterface describes the mechanism API of OrientDB database client

type DocumentClass added in v0.10.0

type DocumentClass struct {
	Class ClassDefinition `json:"class"`
}

DocumentClass describes OrientDB document

type Error added in v0.10.0

type Error struct {
	Code    int    `json:"code"`
	Reason  int    `json:"reason"`
	Content string `json:"content"`
}

Error describes a OrientDB error

type Errors added in v0.10.0

type Errors struct {
	Errors []Error `json:"errors"`
}

Errors describes a list of OrientDB errors

type Index added in v0.10.0

type Index struct {
	Name   string   `json:"name"`
	Type   string   `json:"type"`
	Fields []string `json:"fields"`
}

Index describes a OrientDB index

type Property added in v0.10.0

type Property struct {
	Name        string `json:"name,omitempty"`
	Type        string `json:"type,omitempty"`
	LinkedType  string `json:"linkedType,omitempty"`
	LinkedClass string `json:"linkedClass,omitempty"`
	Mandatory   bool   `json:"mandatory"`
	NotNull     bool   `json:"notNull"`
	ReadOnly    bool   `json:"readonly"`
	Collate     string `json:"collate,omitempty"`
	Regexp      string `json:"regexp,omitempty"`
}

Property describes a OrientDB property

type Result added in v0.10.0

type Result struct {
	Body []byte
}

Result describes an orientdb request result

type Session added in v0.10.0

type Session struct {
	// contains filtered or unexported fields
}

Session describes a OrientDB client session

Jump to

Keyboard shortcuts

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