Example usage for org.apache.commons.configuration DataConfiguration getList

List of usage examples for org.apache.commons.configuration DataConfiguration getList

Introduction

In this page you can find the example usage for org.apache.commons.configuration DataConfiguration getList.

Prototype

public List getList(String key) 

Source Link

Usage

From source file:pl.otros.logview.gui.actions.ConnectToSocketHubAppenderAction.java

private boolean chooseLogImporter() {
    DataConfiguration configuration = getOtrosApplication().getConfiguration();
    List<Object> list1 = configuration.getList(ConfKeys.SOCKET_HUB_APPENDER_ADDRESSES);
    configuration.getInt(ConfKeys.SOCKET_HUB_APPENDER_ADDRESSES_MAX_COUNT, 20);

    Vector<String> recent = new Vector<String>();
    for (Object o : list1) {
        recent.add(o.toString());//w  ww.  j ava  2s .co m
    }

    JXComboBox box = new JXComboBox(recent);
    box.setEditable(true);
    AutoCompleteDecorator.decorate(box);

    MigLayout migLayout = new MigLayout();
    JPanel panel = new JPanel(migLayout);
    panel.add(new JLabel("Host name:port"));
    panel.add(box, "wrap, width 200:220:440");

    while (true) {
        String[] options = { "Connect", "Cancel" };
        int showConfirmDialog = JOptionPane.showOptionDialog(getOtrosApplication().getApplicationJFrame(),
                panel, "Enter host name and port", JOptionPane.OK_CANCEL_OPTION,
                JOptionPane.INFORMATION_MESSAGE, null, options, options[0]);
        if (showConfirmDialog != JOptionPane.OK_OPTION) {

            return false;
        }

        try {
            String hostAndPortString = box.getSelectedItem().toString().trim();
            socket = tryToConnectToSocket(configuration, hostAndPortString, SocketFactory.getDefault());
        } catch (UnknownHostException e) {
            JOptionPane.showMessageDialog(panel, host + " is unknown host name", "Error",
                    JOptionPane.ERROR_MESSAGE);
            continue;
        } catch (IOException e) {
            JOptionPane.showMessageDialog(panel, "Cannot connect to host " + host + ":" + port, "Error",
                    JOptionPane.ERROR_MESSAGE);
            continue;
        } catch (NumberFormatException e) {
            JOptionPane.showMessageDialog(panel, "Can't parse port number.", "Error",
                    JOptionPane.ERROR_MESSAGE);
            continue;
        }
        return true;
    }

}

From source file:pl.otros.logview.gui.actions.ConnectToSocketHubAppenderAction.java

protected Socket tryToConnectToSocket(DataConfiguration configuration, String hostAndPortString,
        SocketFactory socketFactory) throws IOException {
    List<Object> list1 = configuration.getList(ConfKeys.SOCKET_HUB_APPENDER_ADDRESSES);
    String[] hostPort = hostAndPortString.split(":");
    host = hostPort[0];//from w w w . j  a  v  a2 s.  co m
    if (hostPort.length > 1) {
        port = Integer.parseInt(hostPort[1]);
    } else {
        port = 4560;
    }

    Socket socket = socketFactory.createSocket(host, port);
    if (list1.contains(hostAndPortString)) {
        list1.remove(hostAndPortString);
    }
    list1.add(0, hostAndPortString);
    if (list1.size() > 30) {
        list1.remove(list1.size() - 1);
    }
    configuration.setProperty(ConfKeys.SOCKET_HUB_APPENDER_ADDRESSES, list1);
    return socket;
}

From source file:pl.otros.logview.gui.actions.ConnectToSocketHubAppenderActionTest.java

@Test
public void tryToConnect() throws IOException {
    OtrosApplication otrosApplication = new OtrosApplication();
    ConnectToSocketHubAppenderAction action = new ConnectToSocketHubAppenderAction(otrosApplication);
    DataConfiguration dc = new DataConfiguration(new BaseConfiguration());
    String hostAndPort = "abc:50";
    SocketFactory socketFactory = mock(SocketFactory.class);
    Socket mockSocket = mock(Socket.class);
    when(socketFactory.createSocket("abc", 50)).thenReturn(mockSocket);

    Socket socket = action.tryToConnectToSocket(dc, hostAndPort, socketFactory);

    assertEquals(mockSocket, socket);//  ww  w  .j  ava  2  s  .c o  m
    assertEquals(1, dc.getList(ConfKeys.SOCKET_HUB_APPENDER_ADDRESSES).size());
    assertEquals("abc:50", dc.getList(ConfKeys.SOCKET_HUB_APPENDER_ADDRESSES).get(0));
}

From source file:pl.otros.logview.gui.actions.ConnectToSocketHubAppenderActionTest.java

@Test
public void tryToConnectFail() throws IOException {
    OtrosApplication otrosApplication = new OtrosApplication();
    ConnectToSocketHubAppenderAction action = new ConnectToSocketHubAppenderAction(otrosApplication);
    DataConfiguration dc = new DataConfiguration(new BaseConfiguration());
    String hostAndPort = "abc:50";
    SocketFactory socketFactory = mock(SocketFactory.class);
    Socket mockSocket = mock(Socket.class);
    when(socketFactory.createSocket("abc", 50)).thenThrow(new UnknownHostException());

    try {/* w w w.j  a va  2  s  .  com*/
        action.tryToConnectToSocket(dc, hostAndPort, socketFactory);
        Assert.fail();
    } catch (UnknownHostException e) {
        //success
    }

    assertEquals(0, dc.getList(ConfKeys.SOCKET_HUB_APPENDER_ADDRESSES).size());
}

From source file:pl.otros.logview.gui.actions.search.SearchAction.java

private void updateList(String configurationKey, DataConfiguration configuration, String text) {
    List<Object> list = configuration.getList(configurationKey);
    if (list.contains(text)) {
        list.remove(text);//from   www . jav a  2s  .com
    }
    list.add(0, text);
    if (list.size() > configuration.getInt(ConfKeys.SEARCH_LAST_COUNT, 30)) {
        list.remove(list.size() - 1);
    }
    configuration.setProperty(configurationKey, list);
}