Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
  package pt.webdetails.cda.exporter;
  
  import java.util.HashMap;
  
  import  org.json.JSONArray;
  import  org.json.JSONException;
 import  org.json.JSONObject;
JsonExporter

User: pedro Date: Feb 5, 2010 Time: 5:07:12 PM

 
 public class JsonExporter extends AbstractExporter
 {
 
   public JsonExporter(HashMap<StringStringextraSettings)
   {
     super();
   }
 
 
   public void export(final OutputStream outfinal TableModel tableModelthrows ExporterException
   {
 
     try
     {
       JSONObject json = new JSONObject();
 
       // Generate metadata
       final JSONObject queryInfo = new JSONObject();
       final JSONArray metadataArray = new JSONArray();
 
       final int columnCount = tableModel.getColumnCount();
       final int rowCount = tableModel.getRowCount();
 
       for (int i = 0; i < columnCounti++)
       {
         JSONObject info = new JSONObject();
         info.put("colIndex"i);
         info.put("colName"tableModel.getColumnName(i));
         info.put("colType"getColType(tableModel.getColumnClass(i)));
         metadataArray.put(info);
       }
       json.put("metadata"metadataArray);
 
       if (tableModel instanceof MetadataTableModel)
       {
         json.put("queryInfo", ((MetadataTableModel)tableModel).getAllMetadata());
       }
       final JSONArray valuesArray = new JSONArray();
       for (int rowIdx = 0; rowIdx < rowCountrowIdx++)
       {
 
         final JSONArray rowArray = new JSONArray();
         valuesArray.put(rowArray);
         for (int colIdx = 0; colIdx < columnCountcolIdx++)
         {
           rowArray.put(tableModel.getValueAt(rowIdxcolIdx));
         }
       }
       json.put("resultset"valuesArray);
 
       try
       {
         out.write(json.toString().getBytes("UTF-8"));
       }
       catch (IOException e)
       {
         throw new ExporterException("IO Exception converting to utf-8"e);
       }
 
     }
     catch (JSONException e)
     {
       throw new ExporterException("JSONException building object"e);
     }
 
 
   }
 
 
   public String getMimeType()
   {
     return "application/json";
   }
 
 
   public String getAttachmentName()
   {
     // No attachment required
     return null;
   }
New to GrepCode? Check out our FAQ X