Red50.9サーバーでJavaを使用する際に問題が発生しました。コードは次のとおりです。
package com.hwakin.i5lc.manager;
import java.util.Iterator;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.red5.server.adapter.ApplicationAdapter;
import org.red5.server.api.IClient;
import org.red5.server.api.IConnection;
import org.red5.server.api.IScope;
import org.red5.server.api.Red5;
import org.red5.server.api.service.IServiceCapableConnection;
import com.hwakin.i5l.vo.ExternalPoint;
import com.hwakin.i5l.vo.UserInfo;
import com.hwakin.i5lc.vo.ExternalDrawInfo;
public class I5lcDrawManager extends ApplicationAdapter {
protected static Log log = LogFactory.getLog(I5lcDrawManager.class.getName());
public void startDrawingHandler(String type,ExternalPoint point, ExternalDrawInfo data){
try{
IConnection Lconn = Red5.getConnectionLocal();
IScope scope = Lconn.getScope();
Iterator<IConnection> it = scope.getConnections();
while (it.hasNext()) {
IConnection conn = it.next();
if (Lconn.equals(conn)) {
continue;
}
log.info("i5lvDrawManagerReceiver.startDrawingHandler invoked.");
IClient client = conn.getClient();
UserInfo userInfo =(UserInfo) client.getAttribute("userInfo");
if (conn instanceof IServiceCapableConnection) {
if(userInfo.lectureInfo.sync.equals("true")){
((IServiceCapableConnection) conn).invoke("invoke",new Object[]{"i5lvDrawManagerReceiver.startDrawingHandler",type,point,data});
}
}
}
}catch(Exception e){
log.debug("Exception in noticeChattingTo Method:"+e);
}
}
public void drawingHandler(String type,ExternalPoint point){
try{
IConnection Lconn = Red5.getConnectionLocal();
IScope scope = Lconn.getScope();
Iterator<IConnection> it = scope.getConnections();
while (it.hasNext()) {
IConnection conn = it.next();
if (Lconn.equals(conn)) {
continue;
}
log.info("i5lvDrawManagerReceiver.drawingHandler invoked.");
IClient client = conn.getClient();
UserInfo userInfo =(UserInfo) client.getAttribute("userInfo");
if (conn instanceof IServiceCapableConnection) {
if(userInfo.lectureInfo.sync.equals("true")){
((IServiceCapableConnection) conn).invoke("invoke",new Object[]{"i5lvDrawManagerReceiver.drawingHandler",type,point});
}
}
}
}catch(Exception e){
log.debug("Exception in noticeChattingTo Method:"+e);
}
}
public void endDrawingHandler(String type,ExternalPoint point, ExternalDrawInfo data){
try{
IConnection Lconn = Red5.getConnectionLocal();
IScope scope = Lconn.getScope();
Iterator<IConnection> it = scope.getConnections();
while (it.hasNext()) {
IConnection conn = it.next();
if (Lconn.equals(conn)) {
continue;
}
log.info("i5lvDrawManagerReceiver.endDrawingHandler invoked.");
IClient client = conn.getClient();
UserInfo userInfo =(UserInfo) client.getAttribute("userInfo");
if (conn instanceof IServiceCapableConnection) {
if(userInfo.lectureInfo.sync.equals("true")){
((IServiceCapableConnection) conn).invoke("invoke",new Object[]{"i5lvDrawManagerReceiver.endDrawingHandler",type,point,data});
}
}
}
}catch(Exception e){
log.debug("Exception in noticeChattingTo Method:"+e);
}
}
}
エラーは次のとおりです。
/opt/red5/dist/webapps/i5lecture/WEB-INF/src/com/hwakin/i5lc/manager/I5lcDrawManager.javaのエラー(29行目)
Iterator <IConnection> it = scope.getConnections();
タイプの不一致:Collection <Set<IConnection>>からIteratorに変換できません
/opt/red5/dist/webapps/i5lecture/WEB-INF/src/com/hwakin/i5lc/manager/I5lcDrawManager.javaのエラー(63行目)
Iterator<IConnection> it = scope.getConnections();
タイプの不一致:Collection <Set<IConnection>>からIterator<IConnection>に変換できません
/opt/red5/dist/webapps/i5lecture/WEB-INF/src/com/hwakin/i5lc/manager/I5lcDrawManager.javaのエラー(100行目)
Iterator<IConnection> it = scope.getConnections();
タイプの不一致:Collection <Set<IConnection>>からIterator<IConnection>に変換できません
3つの問題(3つのエラー)