public class NtripClient extends Object
请注意,通过调用标准的Authenticator.setDefault(Authenticator)
方法设置认证器,所有身份验证都将自动执行。
Modifier and Type | Field and Description |
---|---|
static int |
DEFAULT_MAX_RECONNECT
重新连接尝试的默认最大次数,而不读取任何数据。
|
static int |
DEFAULT_PORT
Ntrip通信的默认端口。
|
static double |
DEFAULT_RECONNECT_DELAY
连接关闭后重新连接之前的默认延迟时间(秒)。
|
static double |
DEFAULT_RECONNECT_DELAY_FACTOR
每次尝试后重新连接延迟乘以的默认因子。
|
static int |
DEFAULT_TIMEOUT
连接和读取的默认超时时间(毫秒)。
|
Constructor and Description |
---|
NtripClient(String host, int port)
构建NTRIP的客户端。
|
Modifier and Type | Method and Description |
---|---|
void |
addObserver(int typeCode, String mountPoint, MessageObserver observer)
为编码消息添加观察者。
|
void |
checkException()
检查任何流线程是否抛出异常。
|
String |
getHost()
获取广播主机。
|
int |
getPort()
获取用于连接的端口。
|
Proxy |
getProxy()
获取代理。
|
SourceTable |
getSourceTable()
获取源表。
|
void |
setFix(int hour, int minute, double second, double latitude, double longitude, double ellAltitude, double undulation)
如果需要,将GPS定位数据设置为发送到Ntrip广播器的NMEA句子。
|
void |
setProxy(Proxy.Type type, String proxyHost, int proxyPort)
设置代理参数。
|
void |
setReconnectParameters(double delay, double delayFactor, int max)
设置重新连接参数。
|
void |
setTimeout(int timeout)
设置连接和读取的超时时间。
|
void |
startStreaming(String mountPoint, Type type, boolean requiresNMEA, boolean ignoreUnknownMessageTypes)
连接到挂载点并开始从中流式传输数据。
|
void |
stopStreaming(int time)
停止从所有连接的挂载点流式传输数据。
|
public static final int DEFAULT_TIMEOUT
public static final int DEFAULT_PORT
public static final double DEFAULT_RECONNECT_DELAY
public static final double DEFAULT_RECONNECT_DELAY_FACTOR
public static final int DEFAULT_MAX_RECONNECT
public NtripClient(String host, int port)
默认配置使用默认超时时间、默认重新连接参数、无GPS定位和无代理。
host
- 提供源表的广播主机
port
- 用于连接的端口,请参见DEFAULT_PORT
public String getHost()
public int getPort()
public void setTimeout(int timeout)
timeout
- 连接和读取的超时时间(毫秒)
public void setReconnectParameters(double delay, double delayFactor, int max)
delay
- 连接关闭后重新连接之前的延迟时间
delayFactor
- 每次尝试后重新连接延迟乘以的因子
max
- 重新连接尝试的最大次数,而不读取任何数据
public void setProxy(Proxy.Type type, String proxyHost, int proxyPort)
type
- 代理类型
proxyHost
- 代理的主机名(如果type
为Proxy.Type.DIRECT
,则忽略)
proxyPort
- 代理的端口号(如果type
为Proxy.Type.DIRECT
,则忽略)
public Proxy getProxy()
public void setFix(int hour, int minute, double second, double latitude, double longitude, double ellAltitude, double undulation)
hour
- 定位的小时(UTC时间)
minute
- 定位的分钟(UTC时间)
second
- 定位的秒(UTC时间)
latitude
- 纬度(弧度)
longitude
- 经度(弧度)
ellAltitude
- 椭球体上的高度(米)
undulation
- 大地水准面高于椭球体的高度(米)
public void addObserver(int typeCode, String mountPoint, MessageObserver observer)
如果已从流中检索到指定类型的消息,则作为添加的副作用,观察者将立即收到来自每个挂载点的最后一条消息(顺序不确定)。
typeCode
- 消息类型的代码(如果设置为0,将触发通知,而不考虑消息类型)
mountPoint
- 数据必须来自的挂载点(如果为null,将触发通知,而不考虑挂载点)
observer
- 此消息类型的观察者
public SourceTable getSourceTable()
public void startStreaming(String mountPoint, Type type, boolean requiresNMEA, boolean ignoreUnknownMessageTypes)
此方法为连续监视来自挂载点传入的数据设置了内部专用线程。当新的完整的解析消息
可用时,已使用addObserver()
方法注册的观察者
将收到有关消息的通知。
必须为要监视的每个流调用此方法一次。
mountPoint
- 提供流的挂载点
type
- 挂载点的消息类型
requiresNMEA
- 如果为true,则挂载点在请求中需要一个NMEA GGA句子
ignoreUnknownMessageTypes
- 如果为true,则未知的消息类型将被静默忽略
public void checkException()
如果流线程抛出异常,它将在此重新抛出
public void stopStreaming(int time)
如果在数据流传输过程中遇到异常,它将在此重新抛出
time
- 等待底层线程终止的超时时间(毫秒)
Copyright © 2002-2023 CS GROUP. All rights reserved.