`
gongminrui
  • 浏览: 62097 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

Red5 API 之 IConnection 接口的理解

    博客分类:
  • Red5
阅读更多
<!-- .entry-meta -->

 

该接口为网络连接(connection)对象的总接口.每一个网络连接对象都要包含一个客户端(Client)对象和域(Scope)对象.这些网络连接可以是持续连接,轮迅连接或者即时性连接.该接口的目的就是要为这些不同类型的连接提供一个基本的网络连接方法.

嵌套类:
IConnection.Encoding
public static enum Encoding {
                AMF0,
                AMF3
};
主要描述AMF编码的两种类型:AMF0,AMF3

静态域:
static final String PERSISTENT:表示持久连接类型,例如:RTMP等.
static final String POLLING:表示轮询连接类型,例如:RTMPT等.
static final String TRANSIENT:表示即时连接类型,例如:HTTP等.

方法详细介绍:
String getType() : 获得连接类型,用字符串来表示.可以是"persistent","polling"或者"transient".

IConnection.Encoding getEncoding() : 获得编码协议类型(AMF的版本).

void initialize(IClient client) : 通过过一个与连接对象想关联的客户端对象初始化连接对象.

boolean connect(IScope scope) : 尝试与指定的域(Scope)对象连接.成功返回True,失败返回False.

boolean connect(IScope scope,Object[] params) : 尝试与指定的域(Scope)对象连接同时传入一个参数列表.成功返回True,失败返回False.

boolean isConnected() : 判断客户端对象是否与域对象保持连接.返回的结果依赖于连接的类型.True表示连接的类型是持久连接或者轮询连接,False表示是即时性连接.

void close() : 断开客户端与域之间的连接.

Map<String,Object> getConnectParams() : 获得连接时候客户端(Flex/Flash应用程序)传入的参数列表.

IClient getClient() : 返回与网络连接对象相关联的客户端对象.

String getHost() : 返回客户端对象所连接的服务器的名称,如果客户端对象是使用的

IP地址连接的,则以字符串形式直接返回服务器的IP地址.

String getRemoteAddress() : 获得客户端对象的IP地址.

int getRemotePort() : 获得客户端对象的端口号.

String getPath() : 获得连接域的路径.但是请注意,如果你转换了域,这路径并不会更新.

String getSessionId() : 返回会话的ID,在这里很可能放回值为Null.

long getReadBytes() : 返回从网络连接对象所读到的所有字节码总量.

long getWrittenBytes() : 获得写入连接对象的字节码总量.

long getReadMessages() : 获得从连接对象中读出信息总量.

long getWrittenMessages() : 获得写入连接对象的信息总量.

long getDroppedMessages() : 获得丢弃信息总量.

long getPendingMessages() : 获得正在发送到连接对象的信息总量.

void ping() : 检测网络连接响应时间.

int getLastPingTime() : 获得最后一次检测网络连接响应时间的毫秒值.

IScope getScope() : 获得网络连接相关联的域对象.

Iterator<IBasicScope> getBasicScopes() : 返回该连接对象订阅过的基本域对象(BasicScope).该列表将会包含该网络连接对象所连接的共享对象(shared object),广播流对象(broadcast streams).
分享到:
评论

相关推荐

    多人视频会议RED5+FLEX

    import org.red5.server.api.IConnection; import org.red5.server.api.IClient; import org.red5.server.api.IScope; import org.red5.server.api.Red5; import org.red5.server.api.service....

    IConnection:Android长连接tcp netty通讯sdk

    Connection提供了长连接的抽象类,以及一个基于netty的实现,支持多种通讯协议(String,Json,protobuf)使用1,IConnectionService是长连接的抽象接口,提供了包括创建长连接,添加监听,发送心跳包等功能...

    基于VC编写COM连接点事件的分析介绍

    有了连接点,服务器可通过定义一个接口来指定它能够引发的事件。服务器上引发事件时,要采取操作的客户端会向服务器进行自行注册。随后,客户端会提供服务器所定义接口的实现。客户端可通过一些标准机制向服务器进行...

    EasyDb4J:适用于JAVA的Easy Database Helper(类型化查询和简单ORM)

    EasyDb4J是一个简单而实用的数据库助手,它通过单个接口IConnection帮助处理查询和对象关系映射。 它具有以下功能: [无陈述式SQL查询](#1-sql-query) [使用ORM进行实体查询](#2-实体查询) [OO样式标准...

    VV.Queries:帮助管理EF上下文的生命周期

    您将能够使用其RunAsync方法获取IConnection实例(上下文包装器)。 IConnection具有Entities()方法( context.Set()模拟)。 IReadonlyQueryRunner runner = // from DI runner . RunAsync ( async connection =&gt; ...

    大华智能物联综合管理平台使用说明书

    iConnection Center智能物联/园区综合管理平台(以下简称为管理平台),是一套基于综合业务 管理平台软件,通过融合大华在安防和智能化领域的专业经验和前沿技术,集成视频、门禁、报 警、停车场、考勤、访客、可视...

    nats-rx:基于RxJava的NATS的客户端

    maven { url ' https://jitpack.io ' }}dependencies { implementation ' com.github.xy02:nats-rx:0.6.5 '}用法 // connect IConnection nc = new Connection ( new Options ()); // subscribe message ...

    neo4j-ndp-csharpdriver

    using ( IConnection connection = neo4jService . CreateConnection (" localhost ", 7687)) { connection . Run (" CREATE ( a : Person { name :' Martin '})-[ ab : KNOWS { from :' Home '}]-&gt;( b : Person { ...

    用java写的一个数据库连接池

    IConnection conn = pool.getConnection(); Statement st = conn.createStatement(); ResultSet rs = st.executeQuery("select * from TB_EVENTS"); while(rs.next()){ System.out.println(rs.getString(1)); ...

    Netron3X.zip

    public abstract partial class ConnectionBase : DiagramEntityBase, IConnection { #region Fields /// /// the start connector /// private IConnector mFrom; /// /// the end connector ...

Global site tag (gtag.js) - Google Analytics