extension

package
v1.3.10 Latest Latest
Warning

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

Go to latest
Published: Jul 2, 2020 License: Apache-2.0 Imports: 5 Imported by: 43

README

Extensions

Trillian defines a number of extension points to allow for customization by forks. At runtime, implementations are acquired via an extension.Registry, which contains the comprehensive list of all supported extensions (bar the following).

Two other extension points exist:

  • crypto/keys.RegisterHandler() for handling new private key sources.
  • merkle/hashers.Register{Log,Map}Hasher() for adding new hash algorithms.

Documentation

Overview

Package extension provides an extension mechanism for Trillian code to access fork-specific functionality.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Registry

type Registry struct {
	// AdminStorage is the storage implementation to use for persisting tree metadata.
	storage.AdminStorage
	// LogStorage is the storage implementation to use for persisting logs.
	storage.LogStorage
	// MapStorage is the storage implementation to use for persisting maps.
	storage.MapStorage
	// ElectionFactory provides Election instances for each tree.
	ElectionFactory election2.Factory
	// QuotaManager provides rate limiting capabilities for Trillian.
	QuotaManager quota.Manager
	// MetricFactory provides metrics for monitoring.
	monitoring.MetricFactory
	// NewKeyProto creates a new private key based on a key specification.
	// It returns a proto that can be passed to a keys.ProtoHandler to get a crypto.Signer.
	NewKeyProto keys.ProtoGenerator
	// SetProcessStatus sets the current process status for diagnostic purposes.
	SetProcessStatus func(string)
}

Registry defines all extension points available in Trillian. Customizations may easily swap the underlying storage systems by providing their own implementation.

Jump to

Keyboard shortcuts

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