activemq-cpp-3.9.5
TcpSocketOutputStream.h
Go to the documentation of this file.
1/*
2 * Licensed to the Apache Software Foundation (ASF) under one or more
3 * contributor license agreements. See the NOTICE file distributed with
4 * this work for additional information regarding copyright ownership.
5 * The ASF licenses this file to You under the Apache License, Version 2.0
6 * (the "License"); you may not use this file except in compliance with
7 * the License. You may obtain a copy of the License at
8 *
9 * http://www.apache.org/licenses/LICENSE-2.0
10 *
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
16 */
17
18#ifndef _DECAF_INTERNAL_NET_TCP_TCPSOCKETOUTPUTSTREAM_H_
19#define _DECAF_INTERNAL_NET_TCP_TCPSOCKETOUTPUTSTREAM_H_
20
21#include <decaf/util/Config.h>
22
24
25namespace decaf {
26namespace internal {
27namespace net {
28namespace tcp {
29
30 class TcpSocket;
31
37 class DECAF_API TcpSocketOutputStream: public decaf::io::OutputStream {
38 private:
39
40 TcpSocket* socket;
41 volatile bool closed;
42
43 private:
44
45 TcpSocketOutputStream(const TcpSocketOutputStream&);
46 TcpSocketOutputStream& operator=(const TcpSocketOutputStream&);
47
48 public:
49
57
59
60 virtual void close();
61
62 protected:
63
64 virtual void doWriteByte(unsigned char c);
65
66 virtual void doWriteArrayBounded(const unsigned char* buffer, int size, int offset, int length);
67
68 };
69
70}}}}
71
72#endif /*_DECAF_INTERNAL_NET_TCP_TCPSOCKETOUTPUTSTREAM_H_*/
Platform-independent implementation of the socket interface.
Definition TcpSocket.h:43
TcpSocketOutputStream(TcpSocket *socket)
Create a new instance of a Socket OutputStream class.
virtual void doWriteArrayBounded(const unsigned char *buffer, int size, int offset, int length)
virtual void doWriteByte(unsigned char c)
virtual void close()
Closes this object and deallocates the appropriate resources.The object is generally no longer usable...
Base interface for any class that wants to represent an output stream of bytes.
Definition OutputStream.h:39
#define DECAF_API
Definition Config.h:29
Definition TcpSocket.h:34
Definition DefaultServerSocketFactory.h:27
Definition AprPool.h:26
Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements.
Definition AprPool.h:25