Mercurial > hg > Applications > AliceVNC
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 |
rev | line source |
---|---|
1 | 1 package jp.ac.u_ryukyu.alicevnc; |
2 | |
3 import com.glavsoft.drawing.Renderer; | |
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 | 6 import com.glavsoft.rfb.encoding.ServerInitMessage; |
8 | 7 import com.glavsoft.rfb.encoding.decoder.AliceVNCMessage; |
1 | 8 import com.glavsoft.rfb.protocol.Protocol; |
9 import com.glavsoft.rfb.protocol.ProtocolSettings; | |
10 import com.glavsoft.viewer.Viewer; | |
11 import com.glavsoft.viewer.cli.Parser; | |
12 import com.glavsoft.viewer.swing.ParametersHandler; | |
13 import com.glavsoft.viewer.swing.SwingViewerWindow; | |
14 import com.glavsoft.viewer.swing.SwingViewerWindowFactory; | |
15 | |
16 import alice.codesegment.CodeSegment; | |
17 import alice.datasegment.CommandType; | |
18 import alice.datasegment.Receiver; | |
19 | |
20 public class ReceiveServerInitMessage extends CodeSegment { | |
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 | 24 public ReceiveServerInitMessage(){ |
25 info.setKey("ServerInitMessage"); | |
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 | 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 | 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 | 38 Parser parser = new Parser(); |
39 ParametersHandler.completeParserOptions(parser); | |
40 if (parser.isSet(ParametersHandler.ARG_HELP)) { | |
41 System.exit(0); | |
42 } | |
43 Viewer viewer = new Viewer(parser); | |
44 SwingViewerWindowFactory viewerWindowFactory = new SwingViewerWindowFactory(true, false, viewer); | |
45 ProtocolSettings settings = ProtocolSettings.getDefaultSettings(); | |
13 | 46 |
1 | 47 Protocol context = new Protocol(null, null, null, settings); |
8 | 48 context.setMessageQueue(new MyMessageQueue()); |
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 | 57 AliceVNCMessage message = new AliceVNCMessage(); |
58 message.setServerInitMessage(serverInitMessage); | |
59 | |
20 | 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 | 62 ods.update("AliceVNCInitMessage", info.getReceiveData()); |
8 | 63 AliceVNCMessage message = info.asClass(AliceVNCMessage.class); |
64 pixelFormat = message.getPixelFormat(); | |
65 width = message.width; | |
66 height = message.height; | |
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 | 74 |
75 SwingViewerWindow viewerWindow = viewerWindowFactory.createViewerWindow(context, settings, viewer.getUiSettings(), null, null); | |
13 | 76 settings.setViewOnly(true); |
1 | 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 | 79 RenderAndControllerHolder holder = new RenderAndControllerHolder(renderer, repaintController); |
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 | 82 new ReceiveUpdateRectangle(); |
1 | 83 } |
84 | |
85 } |