vim25

package
Version: v0.1.1-0...-5e7805d Latest Latest
Warning

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

Go to latest
Published: Apr 24, 2015 License: Apache-2.0 Imports: 5 Imported by: 0

Documentation

Overview

Package vim25 provides a minimal client implementation to use with other packages in the vim25 tree. The code in this package intentionally does not take any dependendies outside the vim25 tree.

The client implementation in this package embeds the soap.Client structure. Additionally, it stores the value of the session's ServiceContent object. This object stores references to a variety of subsystems, such as the root property collector, the session manager, and the search index. The client is fully functional after serialization and deserialization, without the need for additional requests for initialization.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Client

type Client struct {
	*soap.Client

	ServiceContent types.ServiceContent

	// RoundTripper is a separate field such that the client's implementation of
	// the RoundTripper interface can be wrapped by separate implementations for
	// extra functionality (for example, reauthentication on session timeout).
	RoundTripper soap.RoundTripper
}

Client is a tiny wrapper around the vim25/soap Client that stores session specific state (i.e. state that only needs to be retrieved once after the client has been created). This means the client can be reused after serialization without performing additional requests for initialization.

func NewClient

func NewClient(ctx context.Context, soapClient *soap.Client) (*Client, error)

NewClient creates and returns a new client wirh the ServiceContent field filled in.

func (*Client) MarshalJSON

func (c *Client) MarshalJSON() ([]byte, error)

func (*Client) RoundTrip

func (c *Client) RoundTrip(ctx context.Context, req, res soap.HasFault) error

RoundTrip dispatches to the RoundTripper field.

func (*Client) UnmarshalJSON

func (c *Client) UnmarshalJSON(b []byte) error

func (*Client) Valid

func (c *Client) Valid() bool

Valid returns whether or not the client is valid and ready for use. This should be called after unmarshalling the client.

Source Files

Directories

Path Synopsis
Package xml implements a simple XML 1.0 parser that understands XML name spaces.
Package xml implements a simple XML 1.0 parser that understands XML name spaces.

Jump to

Keyboard shortcuts

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