示例#1
0
  @Override
  public void execute(final MessageEvent event, final String[] args) {
    User sender = event.getUser();
    Channel channel = event.getChannel();

    if (!System.getProperty("os.name").toLowerCase().contains("win")) {
      try {
        int unixTime =
            Integer.parseInt(
                new Scanner(new FileInputStream("/proc/uptime"))
                    .next()
                    .replaceAll("\\.[0-9]+", ""));
        int day = (int) TimeUnit.SECONDS.toDays(unixTime);
        long hours = TimeUnit.SECONDS.toHours(unixTime) - (day * 24);
        long minute =
            TimeUnit.SECONDS.toMinutes(unixTime) - (TimeUnit.SECONDS.toHours(unixTime) * 60);
        long seconds =
            TimeUnit.SECONDS.toSeconds(unixTime) - (TimeUnit.SECONDS.toMinutes(unixTime) * 60);

        channel
            .send()
            .message(
                Utils.colourise(
                    String.format(
                        "&2System uptime: &r%s days %s hours %s minutes %s seconds",
                        day, hours, minute, seconds)));
      } catch (FileNotFoundException ex) {
        sender.send().notice("File \"/proc/uptime\" not found. Are you sure you're using Linux?");
      }
      return;
    }
    sender.send().notice("This command is only supported on Unix based systems.");
  }
示例#2
0
  private String calculateRemTime(long seconds) {
    int days = (int) TimeUnit.SECONDS.toDays(seconds);

    long hours = TimeUnit.SECONDS.toHours(seconds) - TimeUnit.DAYS.toHours(days);

    long minutes =
        TimeUnit.SECONDS.toMinutes(seconds)
            - TimeUnit.DAYS.toMinutes(days)
            - TimeUnit.HOURS.toMinutes(hours);

    long secs =
        TimeUnit.SECONDS.toSeconds(seconds)
            - TimeUnit.DAYS.toSeconds(days)
            - TimeUnit.HOURS.toSeconds(hours)
            - TimeUnit.MINUTES.toSeconds(minutes);

    return String.format("%dd %d:%02d:%02d", days, hours, minutes, secs);
  }
  public static String convertDurationToTime(int seconds) {

    String ret = "";

    int day = (int) TimeUnit.SECONDS.toDays(seconds);
    long hours = TimeUnit.SECONDS.toHours(seconds) - (day * 24);
    long minute = TimeUnit.SECONDS.toMinutes(seconds) - (TimeUnit.SECONDS.toHours(seconds) * 60);
    // long second = TimeUnit.SECONDS.toSeconds(seconds) - (TimeUnit.SECONDS.toMinutes(seconds)
    // *60);

    if (day > 0) {
      ret += day + " ";
      if (day == 1) {
        ret += "jour";
      } else {
        ret += "jours";
      }
      ret += " ";
    }

    if (hours > 0) {
      ret += hours + " ";
      if (hours == 1) {
        ret += "heure";
      } else {
        ret += "heures";
      }
      ret += " ";
    }

    if (minute > 0) {
      ret += minute + " ";
      if (minute == 1) {
        ret += "minute";
      } else {
        ret += "minutes";
      }
      ret += " ";
    }

    return ret;
  }
示例#4
0
 public static long getDaysFromSeconds(long seconds) {
   return TimeUnit.SECONDS.toDays(seconds);
 }
示例#5
0
  @Override
  public void methodToCallback(String print) {
    String timediff;

    live_list = new ArrayList<HashMap<String, String>>();

    try {
      array1 = new JSONArray(print);
      for (int i = 0; i < array1.length(); i++) {
        JSONObject obj1 = array1.getJSONObject(i);
        HashMap<String, String> map = new HashMap<String, String>();

        String event = obj1.getString("event");
        map.put("name", event);
        map.put("fulldata", obj1.toString());
        /// caluclation difference in time
        String time = obj1.getString("$ts"); // time in seconds	
        Calendar cal = Calendar.getInstance(TimeZone.getTimeZone("UTC"));
        cal.set(Calendar.SECOND, 0);
        long timenow = cal.getTimeInMillis();

        try {
          long recivetime = (long) Double.parseDouble(time);

          long diff = (timenow - recivetime) / 1000;
          int day = (int) TimeUnit.SECONDS.toDays(diff);
          long hours = TimeUnit.SECONDS.toHours(diff) - (day * 24);
          long minute = TimeUnit.SECONDS.toMinutes(diff) - (TimeUnit.SECONDS.toHours(diff) * 60);
          long second = TimeUnit.SECONDS.toSeconds(diff) - (TimeUnit.SECONDS.toMinutes(diff) * 60);

          if (day == 0) {
            if (hours == 0) {
              if (minute == 0) {
                timediff = second + " S ago";

              } else {
                timediff = minute + " M ago";
              }

            } else {
              timediff = hours + " H ago";
            }

          } else {
            timediff = day + " D ago";
          }

          map.put("time", timediff);

        } catch (NumberFormatException e) {
          // TODO Auto-generated catch block
          e.printStackTrace();
        }

        ////
        ///////// adding region/////////

        ///////////////////
        String location;
        JSONObject obj2 = null;
        try {
          obj2 = obj1.getJSONObject("properties");

          String region = obj2.getString("$region");
          String country = obj2.getString("mp_country_code");
          location = region + "," + country;
        } catch (Exception e) {
          if (obj2.has("mp_country_code")) {
            location = obj2.getString("mp_country_code");
          } else {
            location = "N/A";
          }

          e.printStackTrace();
        }
        map.put("location", location);
        /////////////////////

        live_list.add(map);
      }

    } catch (JSONException e) {
      // TODO Auto-generated catch block
      e.printStackTrace();
    }

    /////////// updateing data into list
    ListAdapter temp = null;
    setListAdapter(temp);
    Collections.reverse(live_list); // reversing the order of list
    adapter =
        new SimpleAdapter(
            this,
            live_list,
            R.layout.list_live_first,
            new String[] {"name", "time", "location", "fulldata"},
            new int[] {R.id.live_name, R.id.live_time, R.id.live_location});
    setadapter();
  }