UriDispatcher.hpp
Go to the documentation of this file.
1 // @formatter:off
2 //
3 // Balau core C++ library
4 //
5 // Copyright (C) 2008 Bora Software (contact@borasoftware.com)
6 //
7 // Licensed under the Boost Software License - Version 1.0 - August 17th, 2003.
8 // See the LICENSE file for the full license text.
9 //
10 
16 
17 #ifndef COM_BORA_SOFTWARE__BALAU_RESOURCE__URI_DISPATCHER
18 #define COM_BORA_SOFTWARE__BALAU_RESOURCE__URI_DISPATCHER
19 
20 namespace Balau::Resource {
21 
22 class File;
23 class Http;
24 class Https;
25 class ZipEntry;
26 class ZipFile;
27 class StringUri;
28 
38  public: virtual void dispatch(const File & object) = 0;
39 
45  public: virtual void dispatch(const Http & object) = 0;
46 
52  public: virtual void dispatch(const Https & object) = 0;
53 
59  public: virtual void dispatch(const ZipEntry & object) = 0;
60 
66  public: virtual void dispatch(const StringUri & object) = 0;
67 };
68 
69 } // namespace Balau::Resource
70 
71 #endif // COM_BORA_SOFTWARE__BALAU_RESOURCE__URI_DISPATCHER
virtual void dispatch(const File &object)=0
Visit a File URI.
An HTTPS URL.
Definition: Https.hpp:30
The unified resource class hierarchy.
Definition: ByteReadResource.hpp:24
An HTTP URL.
Definition: Http.hpp:31
An immediate string pseudo-URI.
Definition: StringUri.hpp:49
A file on the local file system.
Definition: File.hpp:35
An entry in a zip archive on the local file system.
Definition: ZipEntry.hpp:35
Visitor interface for URIs.
Definition: UriDispatcher.hpp:32