Java tutorial
/* * To change this license header, choose License Headers in Project Properties. * To change this template file, choose Tools | Templates * and open the template in the editor. */ package topComponents; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import org.apache.http.client.methods.CloseableHttpResponse; import org.json.simple.JSONObject; import org.json.simple.parser.JSONParser; import org.json.simple.parser.ParseException; import org.netbeans.api.settings.ConvertAsProperties; import org.openide.awt.ActionID; import org.openide.awt.ActionReference; import org.openide.util.Exceptions; import org.openide.windows.TopComponent; import org.openide.util.NbBundle.Messages; /** * Top component which displays something. */ @ConvertAsProperties(dtd = "-//topComponents//MainWindowTopComponent1//EN", autostore = false) @TopComponent.Description(preferredID = "MainWindowTopComponent1TopComponent", //iconBase="SET/PATH/TO/ICON/HERE", persistenceType = TopComponent.PERSISTENCE_ALWAYS) @TopComponent.Registration(mode = "editor", openAtStartup = true) @ActionID(category = "Window", id = "topComponents.MainWindowTopComponent1TopComponent") @ActionReference(path = "Menu/Window" /*, position = 333 */) @TopComponent.OpenActionRegistration(displayName = "#CTL_MainWindowTopComponent1Action", preferredID = "MainWindowTopComponent1TopComponent") @Messages({ "CTL_MainWindowTopComponent1Action=MainWindowTopComponent1", "CTL_MainWindowTopComponent1TopComponent=MainWindowTopComponent1 Window", "HINT_MainWindowTopComponent1TopComponent=This is a MainWindowTopComponent1 window" }) public final class MainWindowTopComponent extends TopComponent { private static MainWindowTopComponent instance; private static JSONParser parser = new JSONParser(); public MainWindowTopComponent() { initComponents(); setName(Bundle.CTL_MainWindowTopComponent1TopComponent()); setToolTipText(Bundle.HINT_MainWindowTopComponent1TopComponent()); instance = this; } public static MainWindowTopComponent getInstance() { return instance; } /** * This method is called from within the constructor to initialize the form. * WARNING: Do NOT modify this code. The content of this method is always * regenerated by the Form Editor. */ // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents private void initComponents() { jScrollPane1 = new javax.swing.JScrollPane(); VirusTotalOutputArea = new javax.swing.JTextArea(); VirusTotalOutputArea.setColumns(20); VirusTotalOutputArea.setRows(5); jScrollPane1.setViewportView(VirusTotalOutputArea); javax.swing.GroupLayout layout = new javax.swing.GroupLayout(this); this.setLayout(layout); layout.setHorizontalGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(layout.createSequentialGroup().addContainerGap() .addComponent(jScrollPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 380, Short.MAX_VALUE) .addContainerGap())); layout.setVerticalGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(layout.createSequentialGroup().addContainerGap() .addComponent(jScrollPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 278, Short.MAX_VALUE) .addContainerGap())); }// </editor-fold>//GEN-END:initComponents // Variables declaration - do not modify//GEN-BEGIN:variables private javax.swing.JTextArea VirusTotalOutputArea; private javax.swing.JScrollPane jScrollPane1; // End of variables declaration//GEN-END:variables @Override public void componentOpened() { // TODO add custom code on component opening } @Override public void componentClosed() { // TODO add custom code on component closing } void writeProperties(java.util.Properties p) { // better to version settings since initial version as advocated at // http://wiki.apidesign.org/wiki/PropertyFiles p.setProperty("version", "1.0"); // TODO store your settings } void readProperties(java.util.Properties p) { String version = p.getProperty("version"); // TODO read your settings according to their version } public void writeOutput(String input) { VirusTotalOutputArea.setText(input); } }