// ********************************************************************** // // Copyright (c) 2003-2015 ZeroC, Inc. All rights reserved. // // This copy of Ice is licensed to you under the terms described in the // ICE_LICENSE file included in this distribution. // // ********************************************************************** #include #include using namespace std; using namespace Demo; class PrinterI : public Printer { public: virtual void printString(const string &, const Ice::Current&); }; void PrinterI:: printString(const string &s, const Ice::Current&) { cout << s << endl; } int main(int argc, char* argv[]) { int status = 0; Ice::CommunicatorPtr ic; try { ic = Ice::initialize(argc, argv); Ice::ObjectAdapterPtr adapter = ic->createObjectAdapterWithEndpoints("SimplePrinterAdapter", "default -h localhost -p 10000"); Ice::ObjectPtr object = new PrinterI; adapter->add(object, ic->stringToIdentity("SimplePrinter")); adapter->activate(); ic->waitForShutdown(); } catch(const Ice::Exception& e) { cerr << e << endl; status = 1; } catch(const char* msg) { cerr << msg << endl; status = 1; } if(ic) { try { ic->destroy(); } catch(const Ice::Exception& e) { cerr << e << endl; status = 1; } } return status; }