comparison src/viewer_swing/java/com/glavsoft/viewer/ConnectionPresenter.java @ 389:5a61cbdd83ab

Lock rfb
author innparusu
date Tue, 22 Sep 2015 16:03:22 +0900
parents b0be610bc4db
children 704ac9e79e25
comparison
equal deleted inserted replaced
388:367352328329 389:5a61cbdd83ab
23 // 23 //
24 24
25 package com.glavsoft.viewer; 25 package com.glavsoft.viewer;
26 26
27 import com.glavsoft.rfb.protocol.Protocol; 27 import com.glavsoft.rfb.protocol.Protocol;
28 import com.glavsoft.rfb.protocol.ProtocolContext;
29 import com.glavsoft.rfb.protocol.ProtocolSettings; 28 import com.glavsoft.rfb.protocol.ProtocolSettings;
30 import com.glavsoft.transport.Reader;
31 import com.glavsoft.transport.Writer;
32 import com.glavsoft.utils.Strings; 29 import com.glavsoft.utils.Strings;
33 import com.glavsoft.viewer.mvp.Model;
34 import com.glavsoft.viewer.mvp.Presenter; 30 import com.glavsoft.viewer.mvp.Presenter;
35 import com.glavsoft.viewer.mvp.View; 31 import com.glavsoft.viewer.mvp.View;
36 import com.glavsoft.viewer.swing.*; 32 import com.glavsoft.viewer.swing.*;
37 import com.glavsoft.viewer.swing.gui.ConnectionView; 33 import com.glavsoft.viewer.swing.gui.ConnectionView;
38 import com.glavsoft.viewer.swing.gui.ConnectionsHistory; 34 import com.glavsoft.viewer.swing.gui.ConnectionsHistory;
39 import jp.ac.u_ryukyu.treevnc.ScreenChangeRequest;
40 import jp.ac.u_ryukyu.treevnc.TreeRFBProto; 35 import jp.ac.u_ryukyu.treevnc.TreeRFBProto;
41 36
42 import java.net.Socket; 37 import java.net.Socket;
43 import java.util.logging.Logger; 38 import java.util.logging.Logger;
44 39
384 setConnectionWorkerFactory( 379 setConnectionWorkerFactory(
385 new SwingConnectionWorkerFactory(connectionView.getFrame(), viewer.passwordFromParams, this, viewerWindowFactory, viewer.myRfb)); 380 new SwingConnectionWorkerFactory(connectionView.getFrame(), viewer.passwordFromParams, this, viewerWindowFactory, viewer.myRfb));
386 setNeedReconnection(!viewer.noConnection); 381 setNeedReconnection(!viewer.noConnection);
387 startConnection(viewer.settings, viewer.uiSettings, viewer.paramsMask, exchangeSocket); 382 startConnection(viewer.settings, viewer.uiSettings, viewer.paramsMask, exchangeSocket);
388 } 383 }
389
390 public synchronized void newVNCConnection(Protocol workingProtocol) {
391 TreeRFBProto rfb = viewer.getRfb();
392 ProtocolContext previousContext = rfb.getContext();
393 rfb.stopReceiverTask();
394 rfb.setProtocolContext(workingProtocol);
395 viewer.setConnectionPresenter(this);
396 viewer.getConnectionPresenter().addModel("ConnectionParamsModel", connectionParams);
397 if (previousContext != null && rfb.isTreeManager() && rfb.hasParent()) {
398 Reader previousReader = previousContext.getReader();
399 Writer previousWriter = previousContext.getWriter();
400 rfb.exchangeDirectConnectedServer(previousReader, previousWriter);
401 }
402 rfb.enableChildrenTransmission();
403 rfb.printNetworkInterface();
404 rfb.sendDesktopSizeChange(reconnectingId);
405 }
406 } 384 }