blob: ec0aa24c9b39d11dd156c2919251b9eb11f54770 [file] [log] [blame]
/**
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed with
* this work for additional information regarding copyright ownership.
* The ASF licenses this file to You under the Apache License, Version 2.0
* (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#include <exception>
#include <cstdlib>
#include <iostream>
#include <string>
#include <boost/thread.hpp>
#include "producer.hpp"
int main(int argc, char* argv[])
{
std::string hostname = (argc >= 2) ? argv[1] : "localhost";
std::string port = (argc >= 3) ? argv[2] : "9092";
boost::asio::io_service io_service;
std::auto_ptr<boost::asio::io_service::work> work(new boost::asio::io_service::work(io_service));
boost::thread bt(boost::bind(&boost::asio::io_service::run, &io_service));
kafkaconnect::producer producer(io_service);
producer.connect(hostname, port);
while(!producer.is_connected())
{
boost::this_thread::sleep(boost::posix_time::seconds(1));
}
std::vector<std::string> messages;
messages.push_back("So long and thanks for all the fish");
messages.push_back("Time is an illusion. Lunchtime doubly so.");
producer.send(messages, "test");
work.reset();
io_service.stop();
return EXIT_SUCCESS;
}