chime-sdk-signaling-cpp/src/transport/signaling_transport_factory.h (15 lines of code) (raw):
// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
#ifndef CHIME_SIGNALING_TRANSPORT_FACTORY_H_
#define CHIME_SIGNALING_TRANSPORT_FACTORY_H_
#include "signaling_transport.h"
#include "signaling_transport_configuration.h"
#include "websocket/websocket.h"
#include <memory>
namespace chime {
/**
* Defines factory method for creating `SignalingTransport`. Builders will pass it to
* `DefaultSignalingDependencies` in order to customize their own transport layer.
*/
class SignalingTransportFactory {
public:
virtual ~SignalingTransportFactory() = default;
virtual std::unique_ptr<SignalingTransport> CreateSignalingTransport(SignalingTransportConfiguration configuration,
SignalingTransportObserver* observer) = 0;
};
} // namespace chime
#endif // CHIME_SIGNALING_TRANSPORT_FACTORY_H_