annotate src/main/java/jp/ac/u_ryukyu/alicevnc/ReceiveServerInitMessage.java @ 20:15398aebb0ef

refactor
author sugi
date Thu, 06 Nov 2014 19:43:48 +0900
parents 0a44eb36cb1c
children eeafa2dc8445
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1
a73b8a20e233 create another viewer window
one
parents:
diff changeset
1 package jp.ac.u_ryukyu.alicevnc;
a73b8a20e233 create another viewer window
one
parents:
diff changeset
2
a73b8a20e233 create another viewer window
one
parents:
diff changeset
3 import com.glavsoft.drawing.Renderer;
a73b8a20e233 create another viewer window
one
parents:
diff changeset
4 import com.glavsoft.rfb.IRepaintController;
3
9d932f70b29a create MyServerInitMessage. ServerInitMessage could not send with MessagePack for including PixelFormat class
YU
parents: 2
diff changeset
5 import com.glavsoft.rfb.encoding.PixelFormat;
1
a73b8a20e233 create another viewer window
one
parents:
diff changeset
6 import com.glavsoft.rfb.encoding.ServerInitMessage;
8
7c7a9b23c291 use MyMessageQueue
YU
parents: 3
diff changeset
7 import com.glavsoft.rfb.encoding.decoder.AliceVNCMessage;
1
a73b8a20e233 create another viewer window
one
parents:
diff changeset
8 import com.glavsoft.rfb.protocol.Protocol;
a73b8a20e233 create another viewer window
one
parents:
diff changeset
9 import com.glavsoft.rfb.protocol.ProtocolSettings;
a73b8a20e233 create another viewer window
one
parents:
diff changeset
10 import com.glavsoft.viewer.Viewer;
a73b8a20e233 create another viewer window
one
parents:
diff changeset
11 import com.glavsoft.viewer.cli.Parser;
a73b8a20e233 create another viewer window
one
parents:
diff changeset
12 import com.glavsoft.viewer.swing.ParametersHandler;
a73b8a20e233 create another viewer window
one
parents:
diff changeset
13 import com.glavsoft.viewer.swing.SwingViewerWindow;
a73b8a20e233 create another viewer window
one
parents:
diff changeset
14 import com.glavsoft.viewer.swing.SwingViewerWindowFactory;
a73b8a20e233 create another viewer window
one
parents:
diff changeset
15
a73b8a20e233 create another viewer window
one
parents:
diff changeset
16 import alice.codesegment.CodeSegment;
a73b8a20e233 create another viewer window
one
parents:
diff changeset
17 import alice.datasegment.CommandType;
a73b8a20e233 create another viewer window
one
parents:
diff changeset
18 import alice.datasegment.Receiver;
a73b8a20e233 create another viewer window
one
parents:
diff changeset
19
a73b8a20e233 create another viewer window
one
parents:
diff changeset
20 public class ReceiveServerInitMessage extends CodeSegment {
a73b8a20e233 create another viewer window
one
parents:
diff changeset
21
3
9d932f70b29a create MyServerInitMessage. ServerInitMessage could not send with MessagePack for including PixelFormat class
YU
parents: 2
diff changeset
22 private Receiver info = ids.create(CommandType.PEEK);
9d932f70b29a create MyServerInitMessage. ServerInitMessage could not send with MessagePack for including PixelFormat class
YU
parents: 2
diff changeset
23
1
a73b8a20e233 create another viewer window
one
parents:
diff changeset
24 public ReceiveServerInitMessage(){
a73b8a20e233 create another viewer window
one
parents:
diff changeset
25 info.setKey("ServerInitMessage");
a73b8a20e233 create another viewer window
one
parents:
diff changeset
26 }
3
9d932f70b29a create MyServerInitMessage. ServerInitMessage could not send with MessagePack for including PixelFormat class
YU
parents: 2
diff changeset
27
9d932f70b29a create MyServerInitMessage. ServerInitMessage could not send with MessagePack for including PixelFormat class
YU
parents: 2
diff changeset
28 public ReceiveServerInitMessage(String key){
8
7c7a9b23c291 use MyMessageQueue
YU
parents: 3
diff changeset
29 info.setKey(key, "AliceVNCInitMessage");
3
9d932f70b29a create MyServerInitMessage. ServerInitMessage could not send with MessagePack for including PixelFormat class
YU
parents: 2
diff changeset
30 }
9d932f70b29a create MyServerInitMessage. ServerInitMessage could not send with MessagePack for including PixelFormat class
YU
parents: 2
diff changeset
31
1
a73b8a20e233 create another viewer window
one
parents:
diff changeset
32 public void run() {
3
9d932f70b29a create MyServerInitMessage. ServerInitMessage could not send with MessagePack for including PixelFormat class
YU
parents: 2
diff changeset
33 PixelFormat pixelFormat = null;
9d932f70b29a create MyServerInitMessage. ServerInitMessage could not send with MessagePack for including PixelFormat class
YU
parents: 2
diff changeset
34 int width = 0;
9d932f70b29a create MyServerInitMessage. ServerInitMessage could not send with MessagePack for including PixelFormat class
YU
parents: 2
diff changeset
35 int height = 0;
9d932f70b29a create MyServerInitMessage. ServerInitMessage could not send with MessagePack for including PixelFormat class
YU
parents: 2
diff changeset
36 String name = "defalut";
9d932f70b29a create MyServerInitMessage. ServerInitMessage could not send with MessagePack for including PixelFormat class
YU
parents: 2
diff changeset
37
1
a73b8a20e233 create another viewer window
one
parents:
diff changeset
38 Parser parser = new Parser();
a73b8a20e233 create another viewer window
one
parents:
diff changeset
39 ParametersHandler.completeParserOptions(parser);
a73b8a20e233 create another viewer window
one
parents:
diff changeset
40 if (parser.isSet(ParametersHandler.ARG_HELP)) {
a73b8a20e233 create another viewer window
one
parents:
diff changeset
41 System.exit(0);
a73b8a20e233 create another viewer window
one
parents:
diff changeset
42 }
a73b8a20e233 create another viewer window
one
parents:
diff changeset
43 Viewer viewer = new Viewer(parser);
a73b8a20e233 create another viewer window
one
parents:
diff changeset
44 SwingViewerWindowFactory viewerWindowFactory = new SwingViewerWindowFactory(true, false, viewer);
a73b8a20e233 create another viewer window
one
parents:
diff changeset
45 ProtocolSettings settings = ProtocolSettings.getDefaultSettings();
13
0a44eb36cb1c change timing setOnlyViewFlag
YU
parents: 8
diff changeset
46
1
a73b8a20e233 create another viewer window
one
parents:
diff changeset
47 Protocol context = new Protocol(null, null, null, settings);
8
7c7a9b23c291 use MyMessageQueue
YU
parents: 3
diff changeset
48 context.setMessageQueue(new MyMessageQueue());
7c7a9b23c291 use MyMessageQueue
YU
parents: 3
diff changeset
49
3
9d932f70b29a create MyServerInitMessage. ServerInitMessage could not send with MessagePack for including PixelFormat class
YU
parents: 2
diff changeset
50 if ("local".equals(info.from)){
9d932f70b29a create MyServerInitMessage. ServerInitMessage could not send with MessagePack for including PixelFormat class
YU
parents: 2
diff changeset
51 ServerInitMessage serverInitMessage = info.asClass(ServerInitMessage.class);
9d932f70b29a create MyServerInitMessage. ServerInitMessage could not send with MessagePack for including PixelFormat class
YU
parents: 2
diff changeset
52 pixelFormat = serverInitMessage.getPixelFormat();
9d932f70b29a create MyServerInitMessage. ServerInitMessage could not send with MessagePack for including PixelFormat class
YU
parents: 2
diff changeset
53 width = serverInitMessage.getFrameBufferWidth();
9d932f70b29a create MyServerInitMessage. ServerInitMessage could not send with MessagePack for including PixelFormat class
YU
parents: 2
diff changeset
54 height = serverInitMessage.getFrameBufferHeight();
9d932f70b29a create MyServerInitMessage. ServerInitMessage could not send with MessagePack for including PixelFormat class
YU
parents: 2
diff changeset
55 name = serverInitMessage.getName();
9d932f70b29a create MyServerInitMessage. ServerInitMessage could not send with MessagePack for including PixelFormat class
YU
parents: 2
diff changeset
56
8
7c7a9b23c291 use MyMessageQueue
YU
parents: 3
diff changeset
57 AliceVNCMessage message = new AliceVNCMessage();
7c7a9b23c291 use MyMessageQueue
YU
parents: 3
diff changeset
58 message.setServerInitMessage(serverInitMessage);
7c7a9b23c291 use MyMessageQueue
YU
parents: 3
diff changeset
59
20
15398aebb0ef refactor
sugi
parents: 13
diff changeset
60 ods.update("AliceVNCInitMessage", message);
3
9d932f70b29a create MyServerInitMessage. ServerInitMessage could not send with MessagePack for including PixelFormat class
YU
parents: 2
diff changeset
61 } else {
20
15398aebb0ef refactor
sugi
parents: 13
diff changeset
62 ods.update("AliceVNCInitMessage", info.getReceiveData());
8
7c7a9b23c291 use MyMessageQueue
YU
parents: 3
diff changeset
63 AliceVNCMessage message = info.asClass(AliceVNCMessage.class);
7c7a9b23c291 use MyMessageQueue
YU
parents: 3
diff changeset
64 pixelFormat = message.getPixelFormat();
7c7a9b23c291 use MyMessageQueue
YU
parents: 3
diff changeset
65 width = message.width;
7c7a9b23c291 use MyMessageQueue
YU
parents: 3
diff changeset
66 height = message.height;
7c7a9b23c291 use MyMessageQueue
YU
parents: 3
diff changeset
67 name = message.name;
3
9d932f70b29a create MyServerInitMessage. ServerInitMessage could not send with MessagePack for including PixelFormat class
YU
parents: 2
diff changeset
68 }
9d932f70b29a create MyServerInitMessage. ServerInitMessage could not send with MessagePack for including PixelFormat class
YU
parents: 2
diff changeset
69
9d932f70b29a create MyServerInitMessage. ServerInitMessage could not send with MessagePack for including PixelFormat class
YU
parents: 2
diff changeset
70 context.setPixelFormat(pixelFormat);
9d932f70b29a create MyServerInitMessage. ServerInitMessage could not send with MessagePack for including PixelFormat class
YU
parents: 2
diff changeset
71 context.setFbWidth(width);
9d932f70b29a create MyServerInitMessage. ServerInitMessage could not send with MessagePack for including PixelFormat class
YU
parents: 2
diff changeset
72 context.setFbHeight(height);
9d932f70b29a create MyServerInitMessage. ServerInitMessage could not send with MessagePack for including PixelFormat class
YU
parents: 2
diff changeset
73 context.setRemoteDesktopName(name);
1
a73b8a20e233 create another viewer window
one
parents:
diff changeset
74
a73b8a20e233 create another viewer window
one
parents:
diff changeset
75 SwingViewerWindow viewerWindow = viewerWindowFactory.createViewerWindow(context, settings, viewer.getUiSettings(), null, null);
13
0a44eb36cb1c change timing setOnlyViewFlag
YU
parents: 8
diff changeset
76 settings.setViewOnly(true);
1
a73b8a20e233 create another viewer window
one
parents:
diff changeset
77 IRepaintController repaintController = viewerWindow.getSurface();
3
9d932f70b29a create MyServerInitMessage. ServerInitMessage could not send with MessagePack for including PixelFormat class
YU
parents: 2
diff changeset
78 Renderer renderer = repaintController.createRenderer(null, width, height, context.getPixelFormat());
2
e046eb8a3ac1 succeed to repaint another viewer
YU
parents: 1
diff changeset
79 RenderAndControllerHolder holder = new RenderAndControllerHolder(renderer, repaintController);
e046eb8a3ac1 succeed to repaint another viewer
YU
parents: 1
diff changeset
80 ods.put("Holder", holder);
3
9d932f70b29a create MyServerInitMessage. ServerInitMessage could not send with MessagePack for including PixelFormat class
YU
parents: 2
diff changeset
81
2
e046eb8a3ac1 succeed to repaint another viewer
YU
parents: 1
diff changeset
82 new ReceiveUpdateRectangle();
1
a73b8a20e233 create another viewer window
one
parents:
diff changeset
83 }
a73b8a20e233 create another viewer window
one
parents:
diff changeset
84
a73b8a20e233 create another viewer window
one
parents:
diff changeset
85 }