Apache Log4cxx
Version 2.0.0
Toggle main menu visibility
Loading...
Searching...
No Matches
socket.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 _LOG4CXX_HELPERS_SOCKET_H
19
#define _LOG4CXX_HELPERS_SOCKET_H
20
21
#include <
log4cxx/helpers/inetaddress.h
>
22
#include <
log4cxx/helpers/pool.h
>
23
24
25
26
namespace
LOG4CXX_NS
27
{
28
namespace
helpers
29
{
30
class
ByteBuffer;
31
32
class
Socket;
33
LOG4CXX_PTR_DEF
(
Socket
);
34
LOG4CXX_UNIQUE_PTR_DEF
(
Socket
);
35
41
class
LOG4CXX_EXPORT
Socket
:
public
helpers::Object
42
{
43
protected
:
44
LOG4CXX_DECLARE_PRIVATE_MEMBER_PTR(SocketPrivate, m_priv)
45
Socket
(LOG4CXX_PRIVATE_PTR(SocketPrivate) priv);
46
47
public:
48
DECLARE_ABSTRACT_LOG4CXX_OBJECT
(
Socket
)
49
BEGIN_LOG4CXX_CAST_MAP
()
50
LOG4CXX_CAST_ENTRY
(
Socket
)
51
END_LOG4CXX_CAST_MAP
()
52
53
virtual ~
Socket
();
54
55
virtual
size_t
write
(
ByteBuffer
&) = 0;
56
62
virtual
void
setNonBlocking
(
bool
newValue) = 0;
63
65
virtual
void
open
() = 0;
66
68
virtual
bool
is_open
() = 0;
69
71
virtual
void
close
() = 0;
72
74
InetAddressPtr
getInetAddress
() const;
75
77
int
getPort
() const;
78
80
void
setAttributes
(const InetAddressPtr& newAddress,
int
newPort);
81
84
static SocketUniquePtr
create
(const InetAddressPtr& address,
int
port, const
LogString
& concreteClassName = {});
85
private
:
86
Socket
(
const
Socket
&);
87
Socket
& operator=(
const
Socket
&);
88
89
};
90
91
}
// namespace helpers
92
}
// namespace log4cxx
93
94
95
#endif
// _LOG4CXX_HELPERS_SOCKET_H
log4cxx::helpers::ByteBuffer
An area of memory and a cursor into that memory.
Definition
bytebuffer.h:42
log4cxx::helpers::Object
base class for java-like objects.
Definition
object.h:102
log4cxx::helpers::Socket
Abstract base class for an outgoing socket connection.
Definition
socket.h:42
log4cxx::helpers::Socket::getPort
int getPort() const
Returns the value of this socket's port field.
log4cxx::helpers::Socket::setAttributes
void setAttributes(const InetAddressPtr &newAddress, int newPort)
Use newAddress and newPort as the destination.
log4cxx::helpers::Socket::is_open
virtual bool is_open()=0
Is this available for use?
log4cxx::helpers::Socket::close
virtual void close()=0
Close this socket.
log4cxx::helpers::Socket::getInetAddress
InetAddressPtr getInetAddress() const
Returns the value of this socket's address field.
log4cxx::helpers::Socket::create
static SocketUniquePtr create(const InetAddressPtr &address, int port, const LogString &concreteClassName={})
Create a concrete instance of this class.
log4cxx::helpers::Socket::setNonBlocking
virtual void setNonBlocking(bool newValue)=0
Use newValue for the behaviour when the network buffer (on an accepted socket connection) is full.
log4cxx::helpers::Socket::open
virtual void open()=0
Open this socket.
log4cxx::helpers::Socket::write
virtual size_t write(ByteBuffer &)=0
log4cxx::helpers::Socket::Socket
Socket(LOG4CXX_PRIVATE_PTR(SocketPrivate) priv)
inetaddress.h
log4cxx::helpers::LOG4CXX_PTR_DEF
LOG4CXX_PTR_DEF(Object)
log4cxx::helpers::LOG4CXX_UNIQUE_PTR_DEF
LOG4CXX_UNIQUE_PTR_DEF(DatagramSocket)
log4cxx::LogString
std::basic_string< logchar > LogString
Definition
logstring.h:51
LOG4CXX_CAST_ENTRY
#define LOG4CXX_CAST_ENTRY(Interface)
Definition
object.h:154
DECLARE_ABSTRACT_LOG4CXX_OBJECT
#define DECLARE_ABSTRACT_LOG4CXX_OBJECT(object)
Definition
object.h:37
END_LOG4CXX_CAST_MAP
#define END_LOG4CXX_CAST_MAP()
Definition
object.h:148
BEGIN_LOG4CXX_CAST_MAP
#define BEGIN_LOG4CXX_CAST_MAP()
Definition
object.h:142
pool.h
src
main
include
log4cxx
helpers
socket.h
Generated by
1.18.0 on
SITE_PUBLISHED_DATE
Copyright © 2017-2026
Apache Software Foundation
. Apache, Chainsaw, log4cxx, Log4j, Log4net, log4php and the Apache logo are
trademarks or registered trademarks
of The Apache Software Foundation.
Oracle and Java are registered trademarks of Oracle and/or its affiliates. Other names may be trademarks of their respective owners.
Privacy Policy
.