extension

package
v2.10.0 Latest Latest
Warning

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

Go to latest
Published: Jul 6, 2020 License: MIT Imports: 3 Imported by: 0

Documentation

Index

Examples

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Extension

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

Extension is a generic type of extension that can be used where a more specialised Extension type is not available

Example
content := "SOME CONTENT"
extType := "SOME_TYPE"
extension := (&ExtensionBuilder{}).New().WithContent(content).WithType(extType).Build()

data, _ := extension.MarshalJSON()
fmt.Println(string(data))
Output:

{"type":"SOME_TYPE","content":"SOME CONTENT"}

func (Extension) MarshalJSON

func (extension Extension) MarshalJSON() ([]byte, error)

MarshalJSON returns the JSON encoding

type ExtensionBuilder

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

ExtensionBuilder is used to construct an Extension object

func (*ExtensionBuilder) Build

func (builder *ExtensionBuilder) Build() Extension

Build constructs the Extension

func (*ExtensionBuilder) New

func (builder *ExtensionBuilder) New() *ExtensionBuilder

New initializes an ExtensionBuilder

func (*ExtensionBuilder) WithContent

func (builder *ExtensionBuilder) WithContent(content interface{}) *ExtensionBuilder

WithContent attaches data to the Extension. The content must implement JSON serialization

func (*ExtensionBuilder) WithType

func (builder *ExtensionBuilder) WithType(extensionType string) *ExtensionBuilder

WithType sets the extension type string

type LocationConstraintExtension

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

LocationConstraintExtension is an extension representing a geographic constraint

Example
extension := (&LocationConstraintExtensionBuilder{}).New().
	WithLatitude(51.511831).
	WithLongitude(-0.081446).
	WithRadius(0.001).
	WithUncertainty(0.001).
	Build()

data, _ := extension.MarshalJSON()
fmt.Println(string(data))
Output:

{"type":"LOCATION_CONSTRAINT","content":{"expected_device_location":{"latitude":51.511831,"longitude":-0.081446,"radius":0.001,"max_uncertainty_radius":0.001}}}

func (LocationConstraintExtension) MarshalJSON

func (extension LocationConstraintExtension) MarshalJSON() ([]byte, error)

MarshalJSON returns the JSON encoding

type LocationConstraintExtensionBuilder

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

LocationConstraintExtensionBuilder is used to construct a LocationConstraintExtension

func (*LocationConstraintExtensionBuilder) Build

Build constructs a LocationConstraintExtension from the builder

func (*LocationConstraintExtensionBuilder) New

New initializes the builder

func (*LocationConstraintExtensionBuilder) WithLatitude

WithLatitude sets the latitude of the location constraint

func (*LocationConstraintExtensionBuilder) WithLongitude

WithLongitude sets the longitude of the location constraint

func (*LocationConstraintExtensionBuilder) WithRadius

WithRadius sets the radius within which the location constraint will be satisfied

func (*LocationConstraintExtensionBuilder) WithUncertainty

func (builder *LocationConstraintExtensionBuilder) WithUncertainty(uncertainty float64) *LocationConstraintExtensionBuilder

WithUncertainty sets the max uncertainty allowed by the location constraint extension

type ThirdPartyAttributeExtension added in v2.7.0

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

ThirdPartyAttributeExtension is an extension representing the issuance of a third party attribute

Example
attributeDefinition := attribute.NewAttributeDefinition("some_value")

datetime, err := time.Parse("2006-01-02T15:04:05.000Z", "2019-10-30T12:10:09.458Z")
if err != nil {
	log.Printf("Error parsing date, %v", err)
}

extension := (&ThirdPartyAttributeExtensionBuilder{}).New().
	WithExpiryDate(&datetime).
	WithDefinition(attributeDefinition).
	Build()

data, _ := extension.MarshalJSON()
fmt.Println(string(data))
Output:

{"type":"THIRD_PARTY_ATTRIBUTE","content":{"expiry_date":"2019-10-30T12:10:09.458Z","definitions":[{"name":"some_value"}]}}

func (ThirdPartyAttributeExtension) MarshalJSON added in v2.7.0

func (extension ThirdPartyAttributeExtension) MarshalJSON() ([]byte, error)

MarshalJSON returns the JSON encoding

type ThirdPartyAttributeExtensionBuilder added in v2.7.0

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

ThirdPartyAttributeExtensionBuilder is used to construct a ThirdPartyAttributeExtension

func (*ThirdPartyAttributeExtensionBuilder) Build added in v2.7.0

Build creates a ThirdPartyAttributeExtension using the supplied values

func (*ThirdPartyAttributeExtensionBuilder) New added in v2.7.0

New initializes the builder

func (*ThirdPartyAttributeExtensionBuilder) WithDefinition added in v2.7.0

WithDefinition adds an attribute.AttributeDefinition to the list of definitions

func (*ThirdPartyAttributeExtensionBuilder) WithDefinitions added in v2.7.0

WithDefinitions sets the array of attribute.AttributeDefinition on the extension

func (*ThirdPartyAttributeExtensionBuilder) WithExpiryDate added in v2.7.0

WithExpiryDate sets the expiry date of the extension as a UTC timestamp

type TransactionalFlowExtension

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

TransactionalFlowExtension represents a type of extension in a dynamic share

Example
content := "SOME CONTENT"

extension := (&TransactionalFlowExtensionBuilder{}).New().
	WithContent(content).
	Build()

data, _ := json.Marshal(extension)
fmt.Println(string(data))
Output:

{"type":"TRANSACTIONAL_FLOW","content":"SOME CONTENT"}

func (TransactionalFlowExtension) MarshalJSON

func (extension TransactionalFlowExtension) MarshalJSON() ([]byte, error)

MarshalJSON returns the JSON encoding

type TransactionalFlowExtensionBuilder

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

TransactionalFlowExtensionBuilder constructs a TransactionalFlowExtension

func (*TransactionalFlowExtensionBuilder) Build

Build constructs a TransactionalFlowExtension

func (*TransactionalFlowExtensionBuilder) New

New initializes a TransactionalFlowExtensionBuilder

func (*TransactionalFlowExtensionBuilder) WithContent

func (builder *TransactionalFlowExtensionBuilder) WithContent(content interface{}) *TransactionalFlowExtensionBuilder

WithContent sets the payload data for a TransactionalFlowExtension. The content must implement JSON serialization

Jump to

Keyboard shortcuts

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