CatapultServer  v0.5.0.1 (Elephant)
RemotePtApi.h
Go to the documentation of this file.
1 
21 #pragma once
23 #include "catapult/api/RemoteApi.h"
25 #include "catapult/thread/Future.h"
26 
27 namespace catapult { namespace ionet { class PacketIo; } }
28 
29 namespace catapult { namespace api {
30 
32  class RemotePtApi : public RemoteApi {
33  protected:
36  {}
37 
38  public:
41  cache::ShortHashPairRange&& knownShortHashPairs) const = 0;
42  };
43 
46  std::unique_ptr<RemotePtApi> CreateRemotePtApi(
47  ionet::PacketIo& io,
48  const Key& remotePublicKey,
49  const model::TransactionRegistry& registry);
50 }}
catapult::partialtransaction::CosignedTransactionInfos
std::vector< model::CosignedTransactionInfo > CosignedTransactionInfos
A vector of cosigned (partial) transaction infos.
Definition: PtTypes.h:30
catapult::api::RemotePtApi::RemotePtApi
RemotePtApi(const Key &remotePublicKey)
Creates a remote api for the node with specified public key (remotePublicKey).
Definition: RemotePtApi.h:35
CosignedTransactionInfoParser.h
catapult::model::EntityRange
Represents a range of entities.
Definition: EntityRange.h:31
RemoteApi.h
PacketPayloadFactory.h
catapult::api::CreateRemotePtApi
std::unique_ptr< RemotePtApi > CreateRemotePtApi(ionet::PacketIo &io, const Key &remotePublicKey, const model::TransactionRegistry &registry)
Definition: RemotePtApi.cpp:76
m_impl
RemoteRequestDispatcher m_impl
Definition: RemotePtApi.cpp:72
Friendly_Name
static constexpr auto Friendly_Name
Definition: RemotePtApi.cpp:36
catapult::api::RegistryDependentTraits::RegistryDependentTraits
RegistryDependentTraits(const model::TransactionRegistry &registry)
Creates traits around registry.
Definition: RemoteApiUtils.h:34
catapult::api::RemotePtApi
An api for retrieving partial transaction information from a remote node.
Definition: RemotePtApi.h:32
catapult::ionet::PacketIo
An interface for reading and writing packets.
Definition: PacketIo.h:31
catapult::cache::ShortHashPairRange
model::EntityRange< ShortHashPair > ShortHashPairRange
An entity range composed of short hash pairs.
Definition: ShortHashPair.h:54
catapult::thread::future
Provides a way to access the result of an asynchronous operation.
Definition: Future.h:29
ShortHashPair.h
catapult::api::RemoteApi::remotePublicKey
const Key & remotePublicKey() const
Gets the remote node public key.
Definition: RemoteApi.h:38
catapult::ionet::PacketPayloadFactory::FromFixedSizeRange
static PacketPayload FromFixedSizeRange(PacketType type, model::EntityRange< TStructure > &&range)
Creates a packet payload with the specified packet type around a fixed size structure range.
Definition: PacketPayloadFactory.h:45
m_registry
const model::TransactionRegistry & m_registry
Definition: RemotePtApi.cpp:71
RemotePtApi.h
PtTypes.h
catapult::api::ExtractCosignedTransactionInfosFromPacket
CosignedTransactionInfos ExtractCosignedTransactionInfosFromPacket(const ionet::Packet &packet, const TransactionPredicate &isValid)
Definition: CosignedTransactionInfoParser.cpp:84
catapult
Definition: AddressExtractionExtension.cpp:28
catapult::api::RemoteApi
An api for retrieving information from a remote node.
Definition: RemoteApi.h:27
catapult::model::TransactionRegistry
A registry of transaction plugins.
Definition: TransactionPlugin.h:98
Future.h
Packet_Type
static constexpr auto Packet_Type
Definition: RemotePtApi.cpp:35
catapult::api::RemotePtApi::transactionInfos
virtual thread::future< partialtransaction::CosignedTransactionInfos > transactionInfos(cache::ShortHashPairRange &&knownShortHashPairs) const =0
Gets all partial transaction infos from the remote excluding those with all hashes in knownShortHashP...
RemoteRequestDispatcher.h
catapult::utils::ByteArray
Base class for wrappers of byte array types, to provide some type-safety.
Definition: ByteArray.h:29
catapult::Key
utils::ByteArray< Key_Size, Key_tag > Key
Definition: src/catapult/types.h:41
RemoteApiUtils.h