pl.baczkowicz.mqttspy.ui.ConverterController.java Source code

Java tutorial

Introduction

Here is the source code for pl.baczkowicz.mqttspy.ui.ConverterController.java

Source

/***********************************************************************************
 * 
 * Copyright (c) 2014 Kamil Baczkowicz
 * 
 * All rights reserved. This program and the accompanying materials
 * are made available under the terms of the Eclipse Public License v1.0
 * and Eclipse Distribution License v1.0 which accompany this distribution.
 *
 * The Eclipse Public License is available at
 *    http://www.eclipse.org/legal/epl-v10.html
 *    
 * The Eclipse Distribution License is available at
 *   http://www.eclipse.org/org/documents/edl-v10.php.
 *
 * Contributors:
 * 
 *    Kamil Baczkowicz - initial API and implementation and/or initial documentation
 *    
 */
package pl.baczkowicz.mqttspy.ui;

import java.net.URL;
import java.util.ResourceBundle;

import javafx.beans.value.ChangeListener;
import javafx.beans.value.ObservableValue;
import javafx.fxml.FXML;
import javafx.fxml.Initializable;
import javafx.scene.control.TextArea;

import org.apache.commons.codec.binary.Base64;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

import pl.baczkowicz.spy.utils.ConversionUtils;

/**
 * Controller for the converter window.
 */
public class ConverterController implements Initializable {
    final static Logger logger = LoggerFactory.getLogger(ConverterController.class);

    @FXML
    private TextArea textToEncode;

    @FXML
    private TextArea textToDecode;

    @FXML
    private TextArea encodedText;

    @FXML
    private TextArea decodedText;

    @Override
    public void initialize(URL location, ResourceBundle resources) {
        textToEncode.textProperty().addListener(new ChangeListener<String>() {
            @Override
            public void changed(ObservableValue<? extends String> observable, String oldValue, String newValue) {
                encodedText.setText(Base64.encodeBase64String(ConversionUtils.stringToArray(newValue)));
            }
        });

        textToDecode.textProperty().addListener(new ChangeListener<String>() {
            @Override
            public void changed(ObservableValue<? extends String> observable, String oldValue, String newValue) {
                decodedText.setText(ConversionUtils.arrayToString(Base64.decodeBase64(newValue)));
            }
        });
    }
}