bump product version to 6.4.0.3
[LibreOffice.git] / io / source / acceptor / acceptor.hxx
bloba88f3728f5e7bcc9334939db424342385c91307b
1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 /*
3 * This file is part of the LibreOffice project.
5 * This Source Code Form is subject to the terms of the Mozilla Public
6 * License, v. 2.0. If a copy of the MPL was not distributed with this
7 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
9 * This file incorporates work covered by the following license notice:
11 * Licensed to the Apache Software Foundation (ASF) under one or more
12 * contributor license agreements. See the NOTICE file distributed
13 * with this work for additional information regarding copyright
14 * ownership. The ASF licenses this file to you under the Apache
15 * License, Version 2.0 (the "License"); you may not use this file
16 * except in compliance with the License. You may obtain a copy of
17 * the License at http://www.apache.org/licenses/LICENSE-2.0 .
20 #ifndef INCLUDED_IO_SOURCE_ACCEPTOR_ACCEPTOR_HXX
21 #define INCLUDED_IO_SOURCE_ACCEPTOR_ACCEPTOR_HXX
23 #include <osl/pipe.hxx>
24 #include <osl/socket.hxx>
25 #include <osl/mutex.hxx>
27 #include <com/sun/star/uno/Reference.hxx>
29 namespace com::sun::star::connection { class XConnection; }
31 namespace io_acceptor {
33 class PipeAcceptor
35 public:
36 PipeAcceptor( const OUString &sPipeName , const OUString &sConnectionDescription );
38 void init();
39 css::uno::Reference < css::connection::XConnection > accept( );
41 void stopAccepting();
43 ::osl::Mutex m_mutex;
44 ::osl::Pipe m_pipe;
45 OUString m_sPipeName;
46 OUString m_sConnectionDescription;
47 bool m_bClosed;
50 class SocketAcceptor
52 public:
53 SocketAcceptor( const OUString & sSocketName ,
54 sal_uInt16 nPort,
55 bool bTcpNoDelay,
56 const OUString &sConnectionDescription );
58 void init();
59 css::uno::Reference < css::connection::XConnection > accept();
61 void stopAccepting();
63 ::osl::SocketAddr m_addr;
64 ::osl::AcceptorSocket m_socket;
65 OUString m_sSocketName;
66 OUString m_sConnectionDescription;
67 sal_uInt16 m_nPort;
68 bool m_bTcpNoDelay;
69 bool m_bClosed;
74 #endif // INCLUDED_IO_SOURCE_ACCEPTOR_ACCEPTOR_HXX
76 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */