4#ifndef _Stroika_Frameworks_UPnP_SSDP_Server_LocationProvider_h_
5#define _Stroika_Frameworks_UPnP_SSDP_Server_LocationProvider_h_ 1
7#include "Stroika/Frameworks/StroikaPreComp.h"
15#include "Stroika/Foundation/IO/Network/SocketAddress.h"
25namespace Stroika::Frameworks::UPnP::SSDP::Server {
27 using Foundation::Characters::String;
28 using Foundation::IO::Network::InternetAddress;
29 using Foundation::IO::Network::SocketAddress;
30 using Foundation::IO::Network::URI;
67 using LocationProvider = function<optional<URI> (
const LocationContext& context)>;
122 LocationProvider FixedLocation (
const URI& url);
139 LocationProvider LocationFillingInHost (
const URI& location);
148#include "LocationProvider.inl"
String is like std::u32string, except it is much easier to use, often much more space efficient,...
Iterable<T> is a base class for containers which easily produce an Iterator<T> to traverse them.
nonvirtual String ToString() const
optional< SocketAddress > fAsker
InternetAddress fLocalAddress