changeset 230:fddd6f6e7693

tweak
author ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
date Tue, 21 Jan 2020 19:36:20 +0900
parents 87f7afd6cbd9
children 68b5958179d0
files src/main/java/christie/remotingTextEditor/StartManToManSession.java.orig src/main/java/christie/remotingTextEditor/StartManToManSession.java.rej src/main/java/christie/textEditor/main.java src/main/java/christie/textEditor/mainFrame.java.orig src/main/java/christie/textEditor/menuActionOpen.java.orig src/main/java/christie/textEditor/textFrame.java.orig
diffstat 6 files changed, 229 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/main/java/christie/remotingTextEditor/StartManToManSession.java.orig	Tue Jan 21 19:36:20 2020 +0900
@@ -0,0 +1,34 @@
+package christie.remotingTextEditor;
+
+import christie.codegear.CodeGearManager;
+import christie.codegear.StartCodeGear;
+import christie.topology.manager.StartTopologyManager;
+import christie.topology.manager.TopologyManagerConfig;
+
+public class StartManToManSession extends StartCodeGear {
+
+    public StartManToManSession(CodeGearManager cgm) {
+        super(cgm);
+    }
+
+    public static void main(String[] args){
+        int TopologyManagerPort = 10100;
+        int TopologyNodePort = 10101;
+
+        String[] managerArg = {"--localPort", String.valueOf(TopologyManagerPort), "--confFile", "scripts/Log/manToMan.dot"};
+
+        TopologyManagerConfig topologyManagerConfig = new TopologyManagerConfig(managerArg);
+        new StartTopologyManager(topologyManagerConfig);
+
+
+        for (int i = 0; i <= 1; i++){
+            String[] nodeArg = {"--managerPort", String.valueOf(TopologyManagerPort),
+                    "--managerHost", "localhost",
+                    "--localPort", String.valueOf(TopologyNodePort + i),
+            };
+
+            NodeStart.main(nodeArg);
+
+        }
+    }
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/main/java/christie/remotingTextEditor/StartManToManSession.java.rej	Tue Jan 21 19:36:20 2020 +0900
@@ -0,0 +1,16 @@
+***************
+*** 13,19 ****
+  
+      public static void main(String[] args){
+          //ポート番号10000~1000xはone上では他のライブラリに使われている。(Net.javaにつかわれている?)
+-         int TopologyManagerPort = 10100;
+          int TopologyNodePort = 10101;
+  
+          String[] managerArg = {"--localPort", String.valueOf(TopologyManagerPort), "--confFile", "scripts/Log/manToMan.dot"};
+--- 13,18 ----
+  
+      public static void main(String[] args){
+          //ポート番号10000~1000xはone上では他のライブラリに使われている。(Net.javaにつかわれている?)
+          int TopologyNodePort = 10101;
+  
+          String[] managerArg = {"--localPort", String.valueOf(TopologyManagerPort), "--confFile", "scripts/Log/manToMan.dot"};
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/main/java/christie/textEditor/main.java	Tue Jan 21 19:36:20 2020 +0900
@@ -0,0 +1,8 @@
+package christie.textEditor;
+
+public class main {
+    public static void main(String[] args) {
+        mainFrame mF = mainFrame.getInstance();
+        mF.setVisible(true);
+    }
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/main/java/christie/textEditor/mainFrame.java.orig	Tue Jan 21 19:36:20 2020 +0900
@@ -0,0 +1,86 @@
+package christie.textEditor;
+
+import java.awt.BorderLayout;
+import java.awt.Container;
+import java.awt.event.KeyEvent;
+
+import java.io.File;
+import java.io.IOException;
+
+import javax.swing.JDesktopPane;
+import javax.swing.JFileChooser;
+import javax.swing.JFrame;
+import javax.swing.JMenu;
+import javax.swing.JMenuBar;
+import javax.swing.JMenuItem;
+import javax.swing.JOptionPane;
+import javax.swing.KeyStroke;;
+
+public class mainFrame extends JFrame{
+    private JDesktopPane desktop;
+
+    private JFileChooser fileChooser;
+
+    private static mainFrame instance;
+
+    private mainFrame(){
+        //タイトルを設定
+        super("テキストエディタ") ;
+        setSize(1024,768);
+        //ウィンドウを閉じたらアプリを終了する。
+        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
+
+        //メインウィンドウにコンポーネントを配置する領域とのこと。
+        Container container = this.getContentPane();
+
+        //メニューバーを初期化
+        JMenuBar menuBar = new JMenuBar();
+        //コンテナにメニューバーを配置する(ウインドウ上部に)
+        container.add(menuBar, BorderLayout.NORTH);
+        JMenu menuFile = new JMenu("ファイル");
+        menuBar.add(menuFile);
+        //開くメニューの作成
+        JMenuItem menuOpen = new JMenuItem(new menuActionOpen());
+        //CTRT + oショートカットキーの設定
+        menuOpen.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_0,KeyEvent.CTRL_DOWN_MASK));
+        //ファイルメニューに開くを追加する
+        menuFile.add(menuOpen);
+
+        desktop = new JDesktopPane();
+        container.add(desktop);
+
+        textFrame tF = new textFrame();
+        desktop.add(tF);
+        tF.setVisible(true);
+
+        //ファイル選択ダイアグの初期化
+        fileChooser = new JFileChooser();
+        //テキストファイル(*.txt)のみ表示するフィルターを追加
+        //fileChooser.addChoosableFileFilter(new TextFileFilter());
+    }
+
+    void openFile(){
+        //ファイルを開くダイアログを表示する
+        int result = fileChooser.showOpenDialog(this);
+        //ファイル選択時の処理
+        if (JFileChooser.APPROVE_OPTION == result) {
+            File selectedFile = fileChooser.getSelectedFile();
+            try{
+                textFrame tF = new textFrame(selectedFile);
+                //JDesktopPaneにテキストウィンドウを追加
+                desktop.add(tF);
+                tF.setVisible(true);
+            }catch(IOException e){
+                JOptionPane.showMessageDialog(this, "IOExeption: ファイルを開くのに失敗しました。");
+            }
+        }
+    }
+
+    public static mainFrame getInstance(){
+        if (instance == null){
+            instance = new mainFrame();
+        }
+        return instance;
+    }
+
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/main/java/christie/textEditor/menuActionOpen.java.orig	Tue Jan 21 19:36:20 2020 +0900
@@ -0,0 +1,17 @@
+package christie.textEditor;
+
+import java.awt.event.ActionEvent;
+
+import javax.swing.AbstractAction;
+
+class menuActionOpen extends AbstractAction{
+
+    @Override
+    public void actionPerformed(ActionEvent e){
+        mainFrame.getInstance().openFile();
+    }
+
+    menuActionOpen(){
+        super("開く");
+    }
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/main/java/christie/textEditor/textFrame.java.orig	Tue Jan 21 19:36:20 2020 +0900
@@ -0,0 +1,68 @@
+package christie.textEditor;
+
+import java.io.ByteArrayOutputStream;
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.FileNotFoundException;
+import java.io.IOException;
+import java.io.InputStream;
+
+import javax.swing.JInternalFrame;
+import javax.swing.JTextArea;
+
+
+
+public class textFrame extends JInternalFrame{
+    private JTextArea textArea;
+
+    private static String DEFAULT_CHARACTER_CODE = "Shift_JIS";
+
+    public textFrame(){
+        this("新規テキスト");
+    }
+
+    public textFrame(String title){
+        //JInternalFrameのコンストラクタの呼び出しを実行
+        super(title, true, true, true , true);
+        //サイズの指定
+        this.setSize(800,600);
+        // JTextArea(テキスト入力のコンポーネントを追加する。)
+        textArea = new JTextArea();
+        this.add(textArea);
+    }
+
+    public textFrame(File file) throws IOException {
+    this(file.getName());
+    this.openFile(file);
+    }
+
+    void openFile(File file) throws IOException{
+        FileInputStream fiStream = null;
+        ByteArrayOutputStream baoStream = null;
+        try {
+            fiStream = new FileInputStream(file);
+            baoStream = new ByteArrayOutputStream();
+            //読み込みデータ格納用配列
+            byte[] byteData = new byte[1];
+            int ret = fiStream.read(byteData);
+            //ファイルの最後まで繰り返す。
+            while (ret != -1) {
+                baoStream.write(byteData);
+                ret = fiStream.read(byteData);
+            }
+            //バイト配列を文字列に変換
+            String text = new String(baoStream.toByteArray(), DEFAULT_CHARACTER_CODE);
+            //テキストGUIに読み込んだファイルの内容を設定
+            textArea.setText(text);
+            //タイトルを開いたファイル名へ変更
+            this.setTitle(file.getName());
+        }finally{
+            if(fiStream != null){
+                fiStream.close();
+            }
+            if(baoStream != null){
+                baoStream.close();
+            }
+        }
+    }
+}