mop

package module
v0.9.3 Latest Latest
Warning

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

Go to latest
Published: Apr 10, 2023 License: BSD-3-Clause Imports: 2 Imported by: 0

README

MOP

MOP is decentralized, economical, and focused on ensuring and protecting privacy.

Introduce

MOP is the only protocol in the world that comes with micro-payment and is officially commercialized. Its birth can provide absolutely secured access to terminal nodes for any business related to decentralized Data Center.

More

Installing

Install instructions

Contributing

Please read the coding guidelines and style guide.

Contact

Only official website

License

This library is distributed under the BSD-style license found in the LICENSE file.

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	Version = func() string {
		if commitHash != "" {
			return version + "-" + commitHash
		}
		return version + "-dev"
	}()

	// CommitTime returns the time of the commit from which this code was derived.
	// If it's not set (in the case of running the code directly without compilation)
	// then the current time will be returned.
	CommitTime = func() string {
		if commitTime == "" {
			commitTime = strconv.Itoa(int(time.Now().Unix()))
		}
		return commitTime
	}
)

Functions

This section is empty.

Types

This section is empty.

Directories

Path Synopsis
cmd
mop
core
address
Package mop exposes the data structure and operations necessary on the mop.Address type which used in the handshake protocol, address-book and hive protocol.
Package mop exposes the data structure and operations necessary on the mop.Address type which used in the handshake protocol, address-book and hive protocol.
api
Package api provides the functionality of the Mop client-facing HTTP API.
Package api provides the functionality of the Mop client-facing HTTP API.
api/jsonhttp
Package jsonhttp contains utility functions that make it easier to create JSON-based HTTP APIs.
Package jsonhttp contains utility functions that make it easier to create JSON-based HTTP APIs.
api/jsonhttp/jsonhttptest
Package jsonhttptest helps with end-to-end testing of JSON-based HTTP APIs.
Package jsonhttptest helps with end-to-end testing of JSON-based HTTP APIs.
chain/syncer
Package syncer provides orchestration logic for the chainsync protocol.
Package syncer provides orchestration logic for the chainsync protocol.
chunk/encryption
Package encryption exposes functionalities needed for encryption and decryption operations in Mop.
Package encryption exposes functionalities needed for encryption and decryption operations in Mop.
chunk/soc
Package soc provides the single-owner chunk implementation and validator.
Package soc provides the single-owner chunk implementation and validator.
cluster
Package cluster contains most basic and general Cluster concepts.
Package cluster contains most basic and general Cluster concepts.
feeds
Package feeds implements generic interfaces and methods for time-based feeds indexing schemes are implemented in subpackages - epochs - sequence
Package feeds implements generic interfaces and methods for time-based feeds indexing schemes are implemented in subpackages - epochs - sequence
feeds/epochs
Package epochs implements time-based feeds using epochs as index and provide sequential as well as concurrent lookup algorithms
Package epochs implements time-based feeds using epochs as index and provide sequential as well as concurrent lookup algorithms
feeds/sequence
Package sequence provides implementation of sequential indexing for time-based feeds this feed type is best suited for - version updates - followed updates - frequent or regular-interval updates
Package sequence provides implementation of sequential indexing for time-based feeds this feed type is best suited for - version updates - followed updates - frequent or regular-interval updates
feeds/testing
package testing provides tests for update and resolution of time-based feeds
package testing provides tests for update and resolution of time-based feeds
file
Package file provides interfaces for file-oriented operations.
Package file provides interfaces for file-oriented operations.
file/joiner
Package joiner provides implementations of the file.Joiner interface
Package joiner provides implementations of the file.Joiner interface
file/loadsave
Package loadsave provides lightweight persistence abstraction for manifest operations.
Package loadsave provides lightweight persistence abstraction for manifest operations.
file/splitter
Package splitter provides implementations of the file.Splitter interface
Package splitter provides implementations of the file.Splitter interface
incentives/bookkeeper
Package bookkeeper provides functionalities needed to do per-peer bookkeeper.
Package bookkeeper provides functionalities needed to do per-peer bookkeeper.
incentives/bookkeeper/mock
Package mock provides a mock implementation for the bookkeeper interface.
Package mock provides a mock implementation for the bookkeeper interface.
log
manifest
Package manifest contains the abstractions needed for collection representation in Cluster.
Package manifest contains the abstractions needed for collection representation in Cluster.
mctx
Package mctx provides convenience methods for context value injection and extraction.
Package mctx provides convenience methods for context value injection and extraction.
node
Package node defines the concept of a Mop node by bootstrapping and injecting all necessary dependencies.
Package node defines the concept of a Mop node by bootstrapping and injecting all necessary dependencies.
p2p
Package p2p provides the peer-to-peer abstractions used across different protocols in Mop.
Package p2p provides the peer-to-peer abstractions used across different protocols in Mop.
p2p/libp2p/internal/handshake/pb
Package pb holds only Protocol Buffer definitions and generated code.
Package pb holds only Protocol Buffer definitions and generated code.
p2p/libp2p/internal/headers/pb
Package pb holds only Protocol Buffer definitions and generated code.
Package pb holds only Protocol Buffer definitions and generated code.
p2p/libp2p/internal/reacher
Package reacher runs a background worker that will ping peers from an internal queue and report back the reachability to the notifier.
Package reacher runs a background worker that will ping peers from an internal queue and report back the reachability to the notifier.
p2p/protobuf/internal/pb
Package pb holds only Protocol Buffer definitions and generated code for testing purposes.
Package pb holds only Protocol Buffer definitions and generated code for testing purposes.
p2p/topology
Package topology exposes abstractions needed in topology-aware components.
Package topology exposes abstractions needed in topology-aware components.
p2p/topology/discovery
Package discovery exposes the discovery driver interface which is implemented by discovery protocols.
Package discovery exposes the discovery driver interface which is implemented by discovery protocols.
p2p/topology/kademlia
Package kademlia provides an implementation of the topology.Driver interface in a way that a kademlia connectivity is actively maintained by the node.
Package kademlia provides an implementation of the topology.Driver interface in a way that a kademlia connectivity is actively maintained by the node.
p2p/topology/kademlia/internal/metrics
Package metrics provides service for collecting various metrics about peers.
Package metrics provides service for collecting various metrics about peers.
p2p/topology/kademlia/internal/waitnext
Package metrics provides service for collecting various metrics about peers.
Package metrics provides service for collecting various metrics about peers.
pins
Package pins provides a simple set of operations for tracking pinned references.
Package pins provides a simple set of operations for tracking pinned references.
protocol/chainsync
Package chainsync provides the implementation of the chainsync protocol that verifies peer chain synchronization.
Package chainsync provides the implementation of the chainsync protocol that verifies peer chain synchronization.
protocol/chainsync/pb
Package pb holds only Protocol Buffer definitions and generated code.
Package pb holds only Protocol Buffer definitions and generated code.
protocol/hive
Package hive exposes the hive protocol implementation which is the discovery protocol used to inform and be informed about other peers in the network.
Package hive exposes the hive protocol implementation which is the discovery protocol used to inform and be informed about other peers in the network.
protocol/hive/pb
Package pb holds only Protocol Buffer definitions and generated code.
Package pb holds only Protocol Buffer definitions and generated code.
protocol/pingpong
Package pingpong exposes the simple ping-pong protocol which measures round-trip-time with other peers.
Package pingpong exposes the simple ping-pong protocol which measures round-trip-time with other peers.
protocol/pingpong/pb
Package pb holds only Protocol Buffer definitions and generated code.
Package pb holds only Protocol Buffer definitions and generated code.
protocol/pseudosettle
Package pseudosettle implements a pretend settlement protocol where nodes send pretend payment messages consisting only of the payment amount.
Package pseudosettle implements a pretend settlement protocol where nodes send pretend payment messages consisting only of the payment amount.
protocol/pullsync
Package pullsync contains protocol that is used to ensure that there is correct chunk replication in the neighborhood of the node.
Package pullsync contains protocol that is used to ensure that there is correct chunk replication in the neighborhood of the node.
protocol/pushsync
Package pushsync provides the pushsync protocol implementation.
Package pushsync provides the pushsync protocol implementation.
protocol/retrieval
Package retrieval provides the retrieval protocol implementation.
Package retrieval provides the retrieval protocol implementation.
psser
Package psser exposes functionalities needed to communicate with other peers on the network.
Package psser exposes functionalities needed to communicate with other peers on the network.
puller
Package puller provides protocol-orchestrating functionality over the pullsync protocol.
Package puller provides protocol-orchestrating functionality over the pullsync protocol.
pusher
Package pusher provides protocol-orchestrating functionality over the pushsync protocol.
Package pusher provides protocol-orchestrating functionality over the pushsync protocol.
resolver
Package resolver handles name resolution for the Cluster mop.
Package resolver handles name resolution for the Cluster mop.
storer/intervalstore
Package intervalstore provides a persistence layer for intervals relating to a peer.
Package intervalstore provides a persistence layer for intervals relating to a peer.
storer/localstore
Package localstore provides disk storage layer for Cluster Chunk persistence.
Package localstore provides disk storage layer for Cluster Chunk persistence.
storer/netstore
Package netstore provides an abstraction layer over the Cluster local storage layer that leverages connectivity with other peers in order to retrieve chunks from the network that cannot be found locally.
Package netstore provides an abstraction layer over the Cluster local storage layer that leverages connectivity with other peers in order to retrieve chunks from the network that cannot be found locally.
storer/shed
Package shed provides a simple abstraction components to compose more complex operations on storage data organized in fields and indexes.
Package shed provides a simple abstraction components to compose more complex operations on storage data organized in fields and indexes.
storer/statestore
Package statestore provides statestore implementation and mock.
Package statestore provides statestore implementation and mock.
storer/storage
Package storage provides implementation contracts and notions used across storage-aware components in Mop.
Package storage provides implementation contracts and notions used across storage-aware components in Mop.
tags
Package tags provides the implementation for upload progress tracking.
Package tags provides the implementation for upload progress tracking.
tracer
Package tracer helps with the propagation of the tracer span through context in the system.
Package tracer helps with the propagation of the tracer span through context in the system.
traverser
Package traverser provides abstraction and implementation needed to traverse all chunks below a given root hash.
Package traverser provides abstraction and implementation needed to traverse all chunks below a given root hash.
util/bitvector
Package bitvector provides functionality of a simple bit vector implementation.
Package bitvector provides functionality of a simple bit vector implementation.
util/bmt
Package bmtpool provides easy access to binary merkle tree hashers managed in as a resource pool.
Package bmtpool provides easy access to binary merkle tree hashers managed in as a resource pool.
util/bmt/reference
Package reference is a simple nonconcurrent reference implementation for hashsize segment based Binary Merkle tree hash on arbitrary but fixed maximum chunksize n where 0 <= n <= 4096
Package reference is a simple nonconcurrent reference implementation for hashsize segment based Binary Merkle tree hash on arbitrary but fixed maximum chunksize n where 0 <= n <= 4096
util/flipflop
Package flipflop exposes a buffered input functionality that mimicks the behavior of falling edge detection which is done when doing signal processing on digital or analog electric circuitry.
Package flipflop exposes a buffered input functionality that mimicks the behavior of falling edge detection which is done when doing signal processing on digital or analog electric circuitry.
util/rate/limit
Package limit provides a mechanism to rate limit requests based on a string key, refill rate and burst amount.
Package limit provides a mechanism to rate limit requests based on a string key, refill rate and burst amount.
warden
Package wardeness provides convenience methods for reseeding content on Cluster.
Package wardeness provides convenience methods for reseeding content on Cluster.

Jump to

Keyboard shortcuts

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