Go to the documentation of this file.
22 #ifndef MamaTransportH__
23 #define MamaTransportH__
25 #if defined(__cplusplus)
136 const void* platformInfo,
160 const void* platformInfo,
166 int* transportIndex);
172 int* nextTransportIndex);
272 const char** result);
329 double outboundThrottle);
410 int invokeQualityForAllSubscs);
424 int* invokeQualityForAllSubscs);
464 const char* ipAddress,
597 void** nativeTportNamingCtx);
625 #if defined(__cplusplus)
const MAMAExpDLL char * mamaTransportEvent_toString(mamaTransportEvent event)
Return a text description of the transport event.
MAMAExpDLL mama_status mamaTransport_destroy(mamaTransport transport)
Destroy the transport.
MAMAExpDLL mama_status mamaTransport_setLbInitialCallback(mamaTransport transport, mamaTransportLbInitialCB callback)
Set the callback which will decide which member of the load balancing group to use initially.
@ MAMA_THROTTLE_DEFAULT
Definition: transport.h:286
struct mamaStatsCollectorImpl_ * mamaStatsCollector
Definition: types.h:125
MAMAExpDLL mama_status mamaTransport_getAllServerConnections(mamaTransport transport, mamaServerConnection **result, uint32_t *len)
Return a list of all servers connected to this transport.
@ TPORT_LB_SCHEME_STATIC
Definition: transport.h:109
MAMAExpDLL mama_status mamaTransport_setWriteQueueWatermarks(mamaTransport transport, uint32_t highWater, uint32_t lowWater)
Set the transport write queue high and low water mark values.
mama_status
Definition: status.h:37
@ MAMA_TRANSPORT_DISCONNECT
Definition: transport.h:73
MAMAExpDLL void mamaTransport_disableRefresh(mamaTransport transport, uint8_t disable)
Disable Refreshing.
@ MAMA_TRANSPORT_PUBLISHER_DISCONNECT
Definition: transport.h:76
MAMAExpDLL mama_status mamaTransport_getNativeTransport(mamaTransport transport, int index, void **nativeTport)
Return a pointer tothe underlying native transport.
MAMAExpDLL mama_status mamaTransport_setDescription(mamaTransport transport, const char *description)
Set the description for this transport.
@ MAMA_TRANSPORT_CONNECT_FAILED
Definition: transport.h:71
MAMAExpDLL mama_status mamaTransport_getNativeTransportNamingCtx(mamaTransport transport, int index, void **nativeTportNamingCtx)
Return a pointer to the underlying native naming context the transport is using.
MAMAExpDLL void * mamaTransport_getSymbolMapFuncClosure(mamaTransport transport)
Return the symbol mapping function closure for a mamaTransport.
MAMAExpDLL mama_status mamaTransport_freeAllConnections(mamaTransport transport, mamaConnection *result, uint32_t len)
Free resources allocated by mamaTransport_getAllConnections().
void(* mamaTransportLbCB)(int curTransportIndex, int numTransports, const char *source, const char *symbol, int *nextTransportIndex)
Definition: transport.h:168
struct mamaBridgeImpl_ * mamaBridge
Definition: types.h:69
MAMAExpDLL mama_status mamaTransport_getClosure(mamaTransport transport, void **closure)
Return the closure.
MAMAExpDLL mamaSymbolMapFunc mamaTransport_getSymbolMapFunc(mamaTransport transport)
Return the symbol mapping function for a mamaTransport.
@ MAMA_TRANSPORT_CONNECT
Definition: transport.h:70
@ MAMA_TRANSPORT_RECONNECT
Definition: transport.h:72
@ MAMA_TRANSPORT_ACCEPT_RECONNECT
Definition: transport.h:75
void(MAMACALLTYPE * mamaTransportCB)(mamaTransport tport, mamaTransportEvent, short cause, const void *platformInfo, void *closure)
Invoked when transport disconnects, reconnects, or has a data quality event.
Definition: transport.h:133
mamaTransportEvent
MAMA passes this enumeration as a parameter to the mamaTransportCB if a client installs one.
Definition: transport.h:68
MAMAExpDLL int mamaTransport_getDeactivateSubscriptionOnError(mamaTransport transport)
MAMAExpDLL mama_status mamaTransport_getOutboundThrottle(mamaTransport transport, mamaThrottleInstance instance, double *result)
Get the outbound throttle rate.
MAMAExpDLL mama_status mamaTransport_setTransportCallback(mamaTransport transport, mamaTransportCB callback, void *closure)
Set the transport callback.
mamaTransportTopicEvent
MAMA passes this enumeration as a parameter to the mamaTransportTopicCB if a client installs one.
Definition: transport.h:91
MAMAExpDLL mama_status mamaTransport_requestConflation(mamaTransport transport)
Request that publishers conflate incoming messages.
@ TPORT_LB_SCHEME_LIBRARY
Definition: transport.h:112
MAMAExpDLL mama_status mamaTransport_getName(mamaTransport transport, const char **result)
Get the transport name.
MAMAExpDLL mama_status mamaTransport_setOutboundThrottle(mamaTransport transport, mamaThrottleInstance instance, double outboundThrottle)
Set the throttle rate.
MAMAExpDLL mama_status mamaTransport_getInvokeQualityForAllSubscs(const mamaTransport transport, int *invokeQualityForAllSubscs)
Get whether the transport has been set to invoke the quality callback for all subscriptions whenever ...
const MAMAExpDLL char * mamaTransport_getMiddleware(mamaTransport transport)
MAMAExpDLL mama_status mamaTransport_findConnection(mamaTransport transport, mamaConnection *result, const char *ipAddress, uint16_t port)
Find a connection with specified IP Address and Port.
void(* mamaTransportLbInitialCB)(int numTransports, int *transportIndex)
Definition: transport.h:165
@ MAMA_TRANSPORT_ACCEPT
Definition: transport.h:74
MAMAExpDLL mamaStatsCollector mamaTransport_getStatsCollector(mamaTransport transport)
@ MAMA_TRANSPORT_NAMING_SERVICE_CONNECT
Definition: transport.h:78
struct mamaTransportImpl_ * mamaTransport
Definition: types.h:98
MAMAExpDLL mama_status mamaTransport_getDescription(mamaTransport transport, const char **description)
Get the description attribute for the specified transport.
@ MAMA_THROTTLE_RECAP
Definition: transport.h:288
int(MAMACALLTYPE * mamaSymbolMapFunc)(void *closure, char *result, const char *symbol, size_t maxLen)
Prototype for symbol-mapping function.
Definition: symbolmap.h:50
struct mamaServerConnectionImpl_ * mamaServerConnection
Definition: types.h:121
@ MAMA_THROTTLE_INITIAL
Definition: transport.h:287
@ MAMA_TRANSPORT_WRITE_QUEUE_HIGH_WATER_MARK
Definition: transport.h:80
MAMAExpDLL mama_status mamaTransport_freeAllServerConnections(mamaTransport transport, mamaServerConnection *result, uint32_t len)
Free resources allocated by mamaTransport_getAllServerConnections().
void(MAMACALLTYPE * mamaTransportTopicCB)(mamaTransport tport, mamaTransportTopicEvent event, const char *topic, const void *platformInfo, void *closure)
Invoked when topic is subscribed ot unsubcribed on that transport.
Definition: transport.h:157
MAMAExpDLL mama_status mamaTransport_getQuality(const mamaTransport transport, mamaQuality *quality)
Get the quality of data for the transport.
@ TPORT_LB_SCHEME_ROUND_ROBIN
Definition: transport.h:110
MAMAExpDLL mama_status mamaTransport_allocate(mamaTransport *result)
Allocate a transport structure.
@ TPORT_LB_SCHEME_API
Definition: transport.h:111
@ MAMA_TRANSPORT_TOPIC_SUBSCRIBED
Definition: transport.h:93
MAMAExpDLL mama_status mamaTransport_setDeactivateSubscriptionOnError(mamaTransport transport, int deactivate)
MAMAExpDLL mama_status mamaTransport_setLbCallback(mamaTransport transport, mamaTransportLbCB callback)
Set the callback which will allocate the next member of the load balancing group to use.
enum mamaQuality_ mamaQuality
MAMAExpDLL mama_status mamaTransport_requestEndConflation(mamaTransport transport)
Request that publishers stop conflating incoming messages for this transport.
@ MAMA_TRANSPORT_TOPIC_UNSUBSCRIBED
Definition: transport.h:94
MAMAExpDLL mama_status mamaTransport_getAllConnections(mamaTransport transport, mamaConnection **result, uint32_t *len)
Return a list of all clients connected to this transport.
@ MAMA_TRANSPORT_WRITE_QUEUE_LOW_WATER_MARK
Definition: transport.h:81
mamaThrottleInstance
Enum to determine to which throttle a call applies.
Definition: transport.h:284
@ MAMA_TRANSPORT_NAMING_SERVICE_DISCONNECT
Definition: transport.h:79
MAMAExpDLL mama_status mamaTransport_setName(mamaTransport transport, const char *name)
Set the transport name.
MAMAExpDLL mama_status mamaTransport_getAllConnectionsForTopic(mamaTransport transport, const char *topic, mamaConnection **result, uint32_t *len)
Return a list of all clients connected to this transport for a topic.
MAMAExpDLL mama_status mamaTransport_setClosure(mamaTransport transport, void *closure)
Set a closure.
MAMAExpDLL void mamaTransport_setSymbolMapFunc(mamaTransport transport, mamaSymbolMapFunc mapFunc, void *closure)
Set the symbol mapping function for a mamaTransport.
MAMAExpDLL mama_status mamaTransport_setTransportTopicCallback(mamaTransport transport, mamaTransportTopicCB callback, void *closure)
Set the transport topic callback.
MAMAExpDLL mama_status mamaTransport_setInvokeQualityForAllSubscs(mamaTransport transport, int invokeQualityForAllSubscs)
Set whether to invoke the quality callback for all subscriptions whenever a data quality event occurs...
@ MAMA_TRANSPORT_QUALITY
Definition: transport.h:77
MAMAExpDLL mama_status mamaTransport_create(mamaTransport transport, const char *name, mamaBridge bridgeImpl)
Create a previously allocated transport.
struct mamaConnectionImpl_ * mamaConnection
Definition: types.h:120
tportLbScheme
Enum to represent the different load balancing schemes available.
Definition: transport.h:107