/** * OpenKM, Open Document Management System (http://www.openkm.com) * Copyright (c) 2006-2011 Paco Avila & Josep Llort * * No bytes were intentionally harmed during the development of this application. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License along * with this program; if not, write to the Free Software Foundation, Inc., * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. */ package com.openkm.util; import java.io.BufferedReader; import java.io.DataOutputStream; import java.io.IOException; import java.io.InputStreamReader; import java.io.UnsupportedEncodingException; import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.URL; import java.net.URLEncoder; import java.net.UnknownHostException; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import com.openkm.bean.AppVersion; public class Update { private static Logger log = LoggerFactory.getLogger(Update.class); public static String query(String uuid) { log.debug("query("+uuid+")"); StringBuffer sb = new StringBuffer(); try { URL url = new URL("http://update.openkm.com"); HttpURLConnection urlConn =(HttpURLConnection)url.openConnection(); AppVersion av = WarUtils.getAppVersion(); String content = "okm_uuid="+URLEncoder.encode(uuid, "UTF-8")+ "&okm_version="+URLEncoder.encode(av.getVersion(), "UTF-8")+ "&okm_build="+URLEncoder.encode(av.getBuild(), "UTF-8")+ "&os_name="+URLEncoder.encode(System.getProperty("os.name"), "UTF-8")+ "&os_version="+URLEncoder.encode(System.getProperty("os.version"), "UTF-8")+ "&java_vendor="+URLEncoder.encode(System.getProperty("java.vm.vendor"), "UTF-8")+ "&java_version="+URLEncoder.encode(System.getProperty("java.version"), "UTF-8"); urlConn.setDoInput(true); urlConn.setDoOutput(true); urlConn.setUseCaches(false); urlConn.setRequestMethod("POST"); urlConn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded"); urlConn.setRequestProperty("Content-Length", content.length()+ "" ); // Send POST output. DataOutputStream printout = new DataOutputStream( urlConn.getOutputStream() ); printout.writeBytes(content); printout.flush(); printout.close(); // Get response data. BufferedReader input = new BufferedReader(new InputStreamReader(urlConn.getInputStream())); String line; while ((line = input.readLine()) != null) { sb.append(line); } input.close(); } catch (UnsupportedEncodingException e) { log.error("UnsupportedEncodingException: "+e.getMessage()); } catch (MalformedURLException e) { log.error("MalformedURLException: "+e.getMessage()); } catch (UnknownHostException e) { log.error("UnknownHostException: "+e.getMessage()); } catch (IOException e) { log.error("IOException: "+e.getMessage()); } log.debug("query: "+sb.toString()); return sb.toString(); } }