3#ifndef STREAMBASE_STREAMPROPERTIES_H
4#define STREAMBASE_STREAMPROPERTIES_H
6#include "StreamBase.hpp"
8#include "Exceptions.hpp"
11SB_INTERNAL_FWD(StreamPropertiesUtil)
34 const std::string &
getName()
const {
return _name; }
43 CaptureTransformStrategy getCaptureTransformStrategy()
const {
return _captureStrategy; }
49 const std::string &hexString()
const {
return _hexString; }
52 const size_t hashValue()
const {
return _hashValue; }
54 bool operator <(
const StreamProperties& other)
const {
55 return hashString() < other.hashString();
58 bool operator == (
const StreamProperties& other)
const {
59 return hashString() == other.hashString();
61 bool operator != (
const StreamProperties& other)
const {
62 return !(*
this == other);
75 void init(
const std::string &name);
77 std::string _containerName;
80 std::string _qualifiedName;
84 std::string _hexString;
85 friend class sb_internal::StreamPropertiesUtil;
A type of tuple, containing zero or more fields (each encapsulated as a Schema::Field object).
Definition: Schema.hpp:62
Properties of a single stream.
Definition: StreamProperties.hpp:17
StreamProperties()
Null constructor. Object will have no name and no schema.
Definition: StreamProperties.hpp:28
CaptureTransformStrategy
Determines the method StreamBase will use to expose capture fields to client dequeuers.
Definition: StreamProperties.hpp:21
const std::string & hashString() const
Returns the hash of the stream in binary.
Definition: StreamProperties.hpp:46
const std::string & getContainerName() const
Returns the container part of the stream.
Definition: StreamProperties.hpp:37
const std::string & getQualifiedName() const
Returns the fully qualified name of the stream.
Definition: StreamProperties.hpp:31
const Schema & getSchema() const
Returns the schema of the stream.
Definition: StreamProperties.hpp:40
static StreamProperties fromXml(const std::string &input)
Parse and return a StreamProperties from an XML String.
const std::string & getName() const
Returns the name part of the stream.
Definition: StreamProperties.hpp:34