]> sjero.net Git - linphone/blob - p2pproxy/src/org/linphone/p2pproxy/core/P2pProxyManagementImpl.java
6a508f3c9fb1d6ec15a4dd2511824500fc283e2e
[linphone] / p2pproxy / src / org / linphone / p2pproxy / core / P2pProxyManagementImpl.java
1 /*
2 p2pproxy Copyright (C) 2007  Jehan Monnier ()
3
4 P2pProxyManagementImpl.java - .
5
6 This program is free software; you can redistribute it and/or
7 modify it under the terms of the GNU General Public License
8 as published by the Free Software Foundation; either version 2
9 of the License, or (at your option) any later version.
10
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14 GNU General Public License for more details.
15
16 You should have received a copy of the GNU General Public License
17 along with this program; if not, write to the Free Software
18 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
19 */
20 package org.linphone.p2pproxy.core;
21
22 import java.net.InetAddress;
23 import java.net.InetSocketAddress;
24 import java.net.SocketException;
25 import java.net.UnknownHostException;
26
27 import org.apache.log4j.Logger;
28 import org.linphone.p2pproxy.api.P2pProxyException;
29 import org.linphone.p2pproxy.api.P2pProxyManagement;
30
31 import org.linphone.p2pproxy.core.rdvautoconfig.PeerInfoServiceClient;
32
33 public abstract class P2pProxyManagementImpl extends P2pProxyResourceManagementImpl implements ServiceProvider,P2pProxyManagement {
34    protected final Configurator mConfigurator;
35    private final PeerInfoServiceClient mPeerInfoServiceClient;
36    private final static Logger mLog = Logger.getLogger(P2pProxyManagementImpl.class);
37    
38    P2pProxyManagementImpl(Configurator aConfigurator, JxtaNetworkManager aJxtaNetworkManager) throws SocketException, UnknownHostException
39     {
40         super(aJxtaNetworkManager);
41         mConfigurator = aConfigurator;
42         mPeerInfoServiceClient = new PeerInfoServiceClient(aConfigurator, aJxtaNetworkManager);
43     }
44
45     public void start(long aTimeout) throws P2pProxyException
46     {
47         mPeerInfoServiceClient.start(aTimeout);
48         
49     }
50
51     public void stop() {
52         mPeerInfoServiceClient.stop();
53         mLog.info("P2pProxyManagementImpl stopped");
54     }
55
56     public InetAddress getPublicIpAddress()
57         throws P2pProxyException
58     {
59         return mPeerInfoServiceClient.getPublicIpAddress();
60     }
61
62    public boolean probeSocket(InetSocketAddress aSocketAddress, Protocol aProtocol) throws P2pProxyException {
63       return mPeerInfoServiceClient.probeSocket(aSocketAddress, aProtocol);
64    }
65
66  
67  
68
69 }