main.c (52 lines of code) (raw):

/** * * 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 <stdlib.h> #include "amqcs.h" int die(int exitCode, const char *message, apr_status_t reason) { char msgbuf[80]; apr_strerror(reason, msgbuf, sizeof(msgbuf)); fprintf(stderr, "%s: %s (%d)\n", message, msgbuf, reason); exit(exitCode); return reason; } static void terminate(void) { apr_terminate(); } int main(int argc, char *argv[]) { apr_status_t rc; amqcs_connection *connection; apr_pool_t *pool; amqcs_connect_options connect_options; memset(&connect_options, 0, sizeof(connect_options)); strcpy(connect_options.hostname, "127.0.0.1"); connect_options.port = 61616; setbuf(stdout, NULL); rc = apr_initialize(); if( rc!=APR_SUCCESS ) return rc; atexit(terminate); rc = apr_pool_create(&pool, NULL); rc==APR_SUCCESS || die(-2, "Could not allocate pool", rc); fprintf(stdout, "Connecting......"); rc=amqcs_connect( &connection, &connect_options, pool); rc==APR_SUCCESS || die(-2, "Could not connect", rc); fprintf(stdout, "OK\n"); fprintf(stdout, "Sending message."); { char *buffer = "Hello World!"; ow_ActiveMQQueue *dest; ow_ActiveMQTextMessage *message = ow_ActiveMQTextMessage_create(pool); message->content = ow_byte_array_create_with_data(pool,sizeof(buffer),buffer); dest = ow_ActiveMQQueue_create(pool); dest->physicalName = ow_string_create_from_cstring(pool,"TEST.QUEUE"); rc = amqcs_send(connection, (ow_ActiveMQDestination*)dest, (ow_ActiveMQMessage*)message, 1,4,0,pool); rc==APR_SUCCESS || die(-2, "Could not send message", rc); } fprintf(stdout, "OK\n"); fprintf(stdout, "Disconnecting..."); rc=amqcs_disconnect(&connection); rc==APR_SUCCESS || die(-2, "Could not disconnect", rc); fprintf(stdout, "OK\n"); apr_pool_destroy(pool); return 0; }