Package sc

Source Code of sc.OpenURL

package sc;

import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.lang.reflect.Method;
import java.net.URL;
import java.net.URLConnection;
import java.net.URLEncoder;

public class OpenURL
{
  private static String ventuser = null;
  private static String ventpass = null;

  @SuppressWarnings("unchecked")
  public static void openURL(String url)
  {
    String osName = System.getProperty("os.name");
    try
    {
      if (osName.startsWith("Mac OS"))
      {
        Class fileMgr = Class.forName("com.apple.eio.FileManager");
        Method openURL = fileMgr.getDeclaredMethod("openURL",
            new Class[]
            { String.class });
        openURL.invoke(null, new Object[]
        { url });
      } else if (osName.startsWith("Windows"))
        Runtime.getRuntime().exec(
            "rundll32 url.dll,FileProtocolHandler " + url);
      else
      {
        // assume Unix or Linux
        String[] browsers =
        { "firefox", "opera", "konqueror", "epiphany", "mozilla",
            "netscape" };
        String browser = null;
        for (int count = 0; count < browsers.length && browser == null; count++)
          if (Runtime.getRuntime().exec(new String[]
          { "which", browsers[count] }).waitFor() == 0)
            browser = browsers[count];
        if (browser == null)
          throw new Exception("Could not find web browser");
        else
          Runtime.getRuntime().exec(new String[]
          { browser, url });
      }
    } catch (Exception e)
    {
      Log.info(e.getLocalizedMessage());
    }
  }

  public static void openForum()
  {
    openURL("http://www.theharlequin.com.au/forum/");
  }

  public static void joinChat()
  {
    openURL("http://www.theharlequin.com.au/forum/hchat/flashchat.php");
  }

  public static void setVentCredentials(String ventuser, String ventpass)
  {
    OpenURL.ventuser = ventuser;
    OpenURL.ventpass = ventpass;
  }

  public static void joinVent()
  {
    openURL("ventrilo://harlequin.servegame.com:4328/servername=\"Harlequin%20Vent\"&serverpassword="
        + ventpass);
  }

  public static void openProfile(String member_id)
  {
    openURL("http://www.theharlequin.com.au/forum/index.php?action=profile;u="
        + member_id);
  }

  public static void openSendMessage(String member_id)
  {
    openURL("http://www.theharlequin.com.au/forum/index.php?action=pm;sa=send;u="
        + member_id);
  }

  public static void postPM(String from, String to, String subject,
      String message)
  {
    try
    {
      String url = "http://www.theharlequin.com.au/sysbox/test/pm.php";
      URL pmurl = new URL(url);
      URLConnection conn = pmurl.openConnection();
      // Let the run-time system (RTS) know that we want input.
      conn.setDoInput(true);
      // Let the RTS know that we want to do output.
      conn.setDoOutput(true);
      // No caching, we want the real thing.
      conn.setUseCaches(false);
      // Specify the content type.
      conn.setRequestProperty("Content-Type",
          "application/x-www-form-urlencoded");
      // Send POST output.
      DataOutputStream out = new DataOutputStream(conn.getOutputStream());
      String content = "u=" + URLEncoder.encode(from, "UTF-8") + "&t="
          + URLEncoder.encode(to, "UTF-8") + "&s="
          + URLEncoder.encode(subject, "UTF-8") + "&m="
          + URLEncoder.encode(message, "UTF-8");
      out.writeBytes(content);
      out.flush();
      out.close();
      // Get response data.
      DataInputStream in = new DataInputStream(conn.getInputStream());
      in.read();
      in.close();
    } catch (Exception ex)
    {
      Log.info(ex.getLocalizedMessage());
    }
  }
}
TOP

Related Classes of sc.OpenURL

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.