diff options
Diffstat (limited to 'Slimber/CLI/main.cpp')
-rw-r--r-- | Slimber/CLI/main.cpp | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/Slimber/CLI/main.cpp b/Slimber/CLI/main.cpp new file mode 100644 index 0000000..40f41c8 --- /dev/null +++ b/Slimber/CLI/main.cpp @@ -0,0 +1,37 @@ +#include <string> +#include <boost/bind.hpp> + +#include "Swiften/Base/Platform.h" +#if defined(SWIFTEN_PLATFORM_MACOSX) || defined(SWIFTEN_PLATFORM_WINDOWS) +#include "Swiften/LinkLocal/AppleDNSSDService.h" +#else +#include "Swiften/LinkLocal/AvahiDNSSDService.h" +#endif +#include "Slimber/Server.h" +#include "Slimber/FileVCardCollection.h" +#include "Swiften/LinkLocal/LinkLocalRoster.h" +#include "Swiften/EventLoop/SimpleEventLoop.h" +#include "Swiften/Application/Platform/PlatformApplication.h" + +using namespace Swift; + +int main() { + SimpleEventLoop eventLoop; + + boost::shared_ptr<DNSSDService> dnsSDService; +#if defined(SWIFTEN_PLATFORM_MACOSX) || defined(SWIFTEN_PLATFORM_WINDOWS) + dnsSDService = boost::shared_ptr<AppleDNSSDService>( + new AppleDNSSDService()); +#else + dnsSDService = boost::shared_ptr<AvahiDNSSDService>( + new AvahiDNSSDService()); +#endif + + boost::shared_ptr<LinkLocalRoster> linkLocalRoster = boost::shared_ptr<LinkLocalRoster>(new LinkLocalRoster(dnsSDService)); + + FileVCardCollection vCardCollection(PlatformApplication("Slimber").getSettingsDir()); + + Server server(5222, 5562, linkLocalRoster, dnsSDService, &vCardCollection); + eventLoop.run(); + return 0; +} |