wms-stats

16:54:33.277 INFO  jd.cli.Main - Decompiling wms-stats.jar
package com.wowza.wms.stats;

import com.wowza.wms.server.IServer;
import com.wowza.wms.stats.database.IStatsDatabase;
import com.wowza.wms.stats.database.IStatsDatabaseManager;

public abstract interface IStatsManager
{
  public static final int SECONDS_RESOLUTION = 5;
  public static final int HOURS_OF_REALTIME_STORAGE = 12;
  public static final int DAYS_OF_MINUTES_STORAGE = 3;
  public static final int DAYS_OF_HOURLY_STORAGE = 30;
  public static final int DAYS_OF_DAILY_STORAGE = 365;
  
  public abstract void startManager(IServer paramIServer);
  
  public abstract void stopManager();
  
  public abstract boolean isEnabled();
  
  public abstract void setStatsDatabaseManager(IStatsDatabaseManager paramIStatsDatabaseManager);
  
  public abstract IStatsDatabaseManager getStatsDatabaseManager();
  
  public abstract void rollup(IStatsDatabase<?> paramIStatsDatabase);
  
  public abstract void setDebugLogging(boolean paramBoolean);
}

/* Location:
 * Qualified Name:     com.wowza.wms.stats.IStatsManager
 * Java Class Version: 6 (50.0)
 * JD-Core Version:    0.7.1
 */
package com.wowza.wms.stats;

import com.wowza.util.IOPerformanceCounter;
import com.wowza.wms.application.Application;
import com.wowza.wms.application.IApplication;
import com.wowza.wms.client.ConnectionCounter;
import com.wowza.wms.client.ConnectionCounterSimple;
import com.wowza.wms.logging.WMSLogger;
import com.wowza.wms.logging.WMSLoggerFactory;
import com.wowza.wms.rest.Severity;
import com.wowza.wms.rest.Utils;
import com.wowza.wms.rest.machine.monitoring.CurrentMachineStatistics;
import com.wowza.wms.rest.server.monitoring.MonitoringConfig;
import com.wowza.wms.server.IServer;
import com.wowza.wms.server.Server;
import com.wowza.wms.stats.database.IStatsDatabaseManager;
import com.wowza.wms.stats.database.StatsDatabaseManager;
import com.wowza.wms.stats.entry.StatsEntry;
import com.wowza.wms.stats.entry.StatsEntryApplication;
import com.wowza.wms.stats.entry.StatsEntryMachine;
import com.wowza.wms.stats.entry.StatsEntryServer;
import com.wowza.wms.stats.entry.StatsEntryVHost;
import com.wowza.wms.stats.utils.StatsUtilsDateTime;
import com.wowza.wms.vhost.IVHost;
import com.wowza.wms.vhost.ThreadPool;
import com.wowza.wms.vhost.VHostSingleton;
import java.lang.management.ManagementFactory;
import java.lang.management.MemoryMXBean;
import java.lang.management.MemoryUsage;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import java.util.concurrent.Executors;
import java.util.concurrent.ScheduledExecutorService;
import java.util.concurrent.ScheduledFuture;
import java.util.concurrent.ThreadFactory;
import java.util.concurrent.TimeUnit;
import org.joda.time.DateTime;

public class StatsManager
  implements IStatsManager, Runnable
{
  private boolean a = false;
  private IServer b = null;
  private IStatsDatabaseManager c = null;
  private ScheduledExecutorService d = null;
  private ScheduledFuture<?> e = null;
  private static IStatsManager f = null;
  private boolean g = false;
  private ThreadPool h = null;
  private List<StatsEntry> i = new ArrayList();
  private boolean j = false;
  
  public static IStatsManager getInstance()
  {
    WMSLoggerFactory.getLogger(null).debug(Utils.toString("\034$0& \031486?<(a|:;+\t/17%+%\"``", 24 - -55));
    if (f != null) {}
    for (;;)
    {
      return f;
      f = new StatsManager();
    }
  }
  
  public void startManager(IServer paramIServer)
  {
    MonitoringConfig localMonitoringConfig = new MonitoringConfig();
    localMonitoringConfig.loadObject();
    if (!a)
    {
      break label142;
      h = paramIServer.getHandlerThreadPool();
      if (d != null) {
        break label157;
      }
      break label167;
    }
    label43:
    label142:
    label157:
    label167:
    label184:
    for (;;)
    {
      c.setDebugLogging(localMonitoringConfig.isStatsDatabaseManagerDebugEnabled());
      setDebugLogging(localMonitoringConfig.isStatsManagerDebugEnabled());
      logInfo(Utils.toString("ecyknV}sxes**$@hfjeoo1", 86 + -64) + localMonitoringConfig.isEnabled());
      return;
      for (;;)
      {
        c = new StatsDatabaseManager();
        break;
        e = d.schedule(this, a(), TimeUnit.MILLISECONDS);
        a = true;
        break label43;
        b = paramIServer;
        if (c != null) {
          break;
        }
      }
      for (;;)
      {
        if (!localMonitoringConfig.isEnabled()) {
          break label184;
        }
        break;
        d = Executors.newScheduledThreadPool(1, new ThreadFactory()
        {
          public Thread newThread(Runnable paramAnonymousRunnable)
          {
            Thread localThread = Executors.defaultThreadFactory().newThread(paramAnonymousRunnable);
            localThread.setDaemon(true);
            localThread.setName(Severity.startsWith(4 + 18, "EcymiV}sxes"));
            return localThread;
          }
        });
      }
    }
  }
  
  public void stopManager()
  {
    if (a)
    {
      break label47;
      logInfo(Utils.toString("|d~b^u{wp}k22<njp01''", 23 * 41));
    }
    for (;;)
    {
      e.cancel(true);
      e = null;
      break;
      return;
      label47:
      a = false;
      if (e == null) {
        break;
      }
    }
  }
  
  public void setStatsDatabaseManager(IStatsDatabaseManager paramIStatsDatabaseManager)
  {
    c = paramIStatsDatabaseManager;
  }
  
  public IStatsDatabaseManager getStatsDatabaseManager()
  {
    return c;
  }
  
  public void run()
  {
    label13:
    Iterator localIterator2;
    if (!a)
    {
      break label120;
      break label138;
      if (localIterator2.hasNext()) {
        break label203;
      }
    }
    label26:
    IVHost localIVHost;
    String str2;
    for (Object localObject = localIVHost.getApplication(str2);; localObject = new Application(str2, localIVHost))
    {
      DateTime localDateTime;
      if (localObject == null)
      {
        break label135;
        a(localDateTime, localIVHost);
        localIterator2 = localIVHost.getApplicationFolderNames().iterator();
        break label13;
        label69:
        e = d.schedule(this, a(), TimeUnit.MILLISECONDS);
        return;
      }
      Iterator localIterator1;
      label120:
      label135:
      label138:
      String str1;
      for (;;)
      {
        localDateTime = StatsUtilsDateTime.getNormalizedToSeconds(StatsUtilsDateTime.getNow());
        a(localDateTime);
        b(localDateTime);
        localIterator1 = VHostSingleton.getVHostNames().iterator();
        break;
        logError(Utils.toString("#hnr57?\0235#77(')/,8k%>n!?%r!!;8>6>t", 49 * 9));
        return;
        break label13;
        if (!localIterator1.hasNext()) {
          break label177;
        }
        break label179;
        a(localDateTime, str1, (IApplication)localObject);
        break label13;
        break;
        if (!c.isStorageAvailable()) {
          break label69;
        }
      }
      for (;;)
      {
        break label138;
        label177:
        break label69;
        label179:
        str1 = (String)localIterator1.next();
        localIVHost = VHostSingleton.getInstance(str1);
        if (localIVHost != null) {
          break;
        }
      }
      label203:
      str2 = (String)localIterator2.next();
      localObject = null;
      if (localIVHost.isApplicationLoaded(str2)) {
        break label26;
      }
    }
  }
  
  private final void a(DateTime paramDateTime)
  {
    StatsEntryMachine localStatsEntryMachine = new StatsEntryMachine();
    localStatsEntryMachine.setDateTime(paramDateTime);
    CurrentMachineStatistics localCurrentMachineStatistics = new CurrentMachineStatistics();
    localCurrentMachineStatistics.loadObject();
    localStatsEntryMachine.setCPUUsage(localCurrentMachineStatistics.getCpuUser().intValue());
    localStatsEntryMachine.setDiskUsage((int)(localCurrentMachineStatistics.getDiskUsed().longValue() / 1048576L));
    localStatsEntryMachine.setMemoryUsage((int)(localCurrentMachineStatistics.getMemoryUsed().longValue() / 1048576L));
    a(localStatsEntryMachine);
  }
  
  private final void a(DateTime paramDateTime, String paramString, IApplication paramIApplication)
  {
    StatsEntryApplication localStatsEntryApplication = new StatsEntryApplication();
    localStatsEntryApplication.setVHost(paramString);
    localStatsEntryApplication.setApplicationName(paramIApplication.getName());
    localStatsEntryApplication.setDateTime(paramDateTime);
    localStatsEntryApplication.setBandwidthIn((int)(paramIApplication.getIoPerformanceCounter().getMessagesInBytesRate() / 1024.0D));
    localStatsEntryApplication.setBandwidthOut((int)(paramIApplication.getIoPerformanceCounter().getMessagesOutBytesRate() / 1024.0D));
    localStatsEntryApplication.setCupertinoConnectionCount((int)paramIApplication.getConnectionCounter(2).getCurrent());
    localStatsEntryApplication.setMPEGDashConnectionCount((int)paramIApplication.getConnectionCounter(6).getCurrent());
    localStatsEntryApplication.setSanJoseConnectionCount((int)paramIApplication.getConnectionCounter(4).getCurrent());
    localStatsEntryApplication.setSmoothConnectionCount((int)paramIApplication.getConnectionCounter(3).getCurrent());
    localStatsEntryApplication.setRTMPConnectionCount((int)paramIApplication.getConnectionCounter(0).getCurrent());
    localStatsEntryApplication.setRTSPConnectionCount((int)paramIApplication.getConnectionCounter(1).getCurrent());
    localStatsEntryApplication.setWebMConnectionCount((int)paramIApplication.getConnectionCounter(5).getCurrent());
    a(localStatsEntryApplication);
  }
  
  private final void b(DateTime paramDateTime)
  {
    StatsEntryServer localStatsEntryServer = new StatsEntryServer();
    Server localServer = Server.getInstance();
    localStatsEntryServer.setDateTime(paramDateTime);
    localStatsEntryServer.setConnectionCount((int)localServer.getConnectionCounter().getCurrent());
    localStatsEntryServer.setBandwidthIn((int)(localServer.getIoPerformanceCounter().getMessagesInBytesRate() / 1024.0D));
    localStatsEntryServer.setBandwidthOut((int)(localServer.getIoPerformanceCounter().getMessagesOutBytesRate() / 1024.0D));
    MemoryMXBean localMemoryMXBean = ManagementFactory.getMemoryMXBean();
    localStatsEntryServer.setHeapMemory((int)(localMemoryMXBean.getHeapMemoryUsage().getUsed() / 1048576L));
    a(localStatsEntryServer);
  }
  
  private final void a(DateTime paramDateTime, IVHost paramIVHost)
  {
    StatsEntryVHost localStatsEntryVHost = new StatsEntryVHost();
    localStatsEntryVHost.setBandWidthIn((int)(paramIVHost.getIoPerformanceCounter().getMessagesInBytesRate() / 1024.0D));
    localStatsEntryVHost.setBandwidthOut((int)(paramIVHost.getIoPerformanceCounter().getMessagesOutBytesRate() / 1024.0D));
    int k = 0;
    int m = 0;
    break label101;
    localStatsEntryVHost.setConnectionCount(k);
    localStatsEntryVHost.setVHost(paramIVHost.getName());
    localStatsEntryVHost.setDateTime(paramDateTime);
    a(localStatsEntryVHost);
    return;
    for (;;)
    {
      k = (int)(k + paramIVHost.getConnectionCounter(m).getCurrent());
      m++;
      label101:
      if (m >= 8) {
        break;
      }
    }
  }
  
  public void setDebugLogging(boolean paramBoolean)
  {
    g = paramBoolean;
  }
  
  /* Error */
  private final void a(StatsEntry arg1)
  {
    // Byte code:
    //   0: iconst_0
    //   1: istore_2
    //   2: aload_0
    //   3: getfield 56	com/wowza/wms/stats/StatsManager:i	Ljava/util/List;
    //   6: dup
    //   7: astore_3
    //   8: goto +178 -> 186
    //   11: aload 4
    //   13: athrow
    //   14: aload_0
    //   15: getfield 51	com/wowza/wms/stats/StatsManager:h	Lcom/wowza/wms/vhost/ThreadPool;
    //   18: new 10	com/wowza/wms/stats/StatsManager$StatsManagerWorker
    //   21: dup
    //   22: aload_0
    //   23: aconst_null
    //   24: invokespecial 418	com/wowza/wms/stats/StatsManager$StatsManagerWorker:<init>	(Lcom/wowza/wms/stats/StatsManager;Lcom/wowza/wms/stats/StatsManager$1;)V
    //   27: invokevirtual 424	com/wowza/wms/vhost/ThreadPool:execute	(Ljava/lang/Runnable;)V
    //   30: goto +148 -> 178
    //   33: iload_2
    //   34: ifeq +144 -> 178
    //   37: goto -23 -> 14
    //   40: goto -7 -> 33
    //   43: aload_0
    //   44: getfield 56	com/wowza/wms/stats/StatsManager:i	Ljava/util/List;
    //   47: aload_1
    //   48: invokeinterface 428 2 0
    //   53: pop
    //   54: aload_0
    //   55: getfield 58	com/wowza/wms/stats/StatsManager:j	Z
    //   58: ifne +11 -> 69
    //   61: goto +59 -> 120
    //   64: aload_3
    //   65: monitorexit
    //   66: goto -26 -> 40
    //   69: aload_0
    //   70: new 113	java/lang/StringBuilder
    //   73: dup
    //   74: invokespecial 114	java/lang/StringBuilder:<init>	()V
    //   77: sipush 643
    //   80: sipush 212
    //   83: idiv
    //   84: ldc_w 430
    //   87: invokestatic 436	com/wowza/wms/rest/Severity:startsWith	(ILjava/lang/String;)Ljava/lang/String;
    //   90: invokevirtual 120	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   93: aload_1
    //   94: invokevirtual 439	java/lang/StringBuilder:append	(Ljava/lang/Object;)Ljava/lang/StringBuilder;
    //   97: ldc_w 441
    //   100: bipush 53
    //   102: bipush 25
    //   104: imul
    //   105: invokestatic 74	com/wowza/wms/rest/Utils:toString	(Ljava/lang/String;I)Ljava/lang/String;
    //   108: invokevirtual 120	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   111: invokevirtual 129	java/lang/StringBuilder:toString	()Ljava/lang/String;
    //   114: invokevirtual 444	com/wowza/wms/stats/StatsManager:logDebug	(Ljava/lang/String;)V
    //   117: goto -53 -> 64
    //   120: aload_0
    //   121: new 113	java/lang/StringBuilder
    //   124: dup
    //   125: invokespecial 114	java/lang/StringBuilder:<init>	()V
    //   128: sipush 1075
    //   131: sipush 234
    //   134: idiv
    //   135: ldc_w 446
    //   138: invokestatic 436	com/wowza/wms/rest/Severity:startsWith	(ILjava/lang/String;)Ljava/lang/String;
    //   141: invokevirtual 120	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   144: aload_1
    //   145: invokevirtual 439	java/lang/StringBuilder:append	(Ljava/lang/Object;)Ljava/lang/StringBuilder;
    //   148: ldc_w 448
    //   151: bipush 39
    //   153: bipush 47
    //   155: imul
    //   156: invokestatic 74	com/wowza/wms/rest/Utils:toString	(Ljava/lang/String;I)Ljava/lang/String;
    //   159: invokevirtual 120	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   162: invokevirtual 129	java/lang/StringBuilder:toString	()Ljava/lang/String;
    //   165: invokevirtual 444	com/wowza/wms/stats/StatsManager:logDebug	(Ljava/lang/String;)V
    //   168: aload_0
    //   169: iconst_1
    //   170: putfield 58	com/wowza/wms/stats/StatsManager:j	Z
    //   173: iconst_1
    //   174: istore_2
    //   175: goto -111 -> 64
    //   178: return
    //   179: astore 4
    //   181: aload_3
    //   182: monitorexit
    //   183: goto -172 -> 11
    //   186: monitorenter
    //   187: goto -144 -> 43
    // Exception table:
    //   from	to	target	type
    //   43	178	179	finally
    //   179	186	179	finally
  }
  
  private final long a()
  {
    DateTime localDateTime = StatsUtilsDateTime.getNow();
    long l = 5000L;
    l -= localDateTime.getMillis() % l;
    return l;
  }
  
  /* Error */
  public void rollup(com.wowza.wms.stats.database.IStatsDatabase<?> arg1)
  {
    // Byte code:
    //   0: iconst_0
    //   1: istore_2
    //   2: goto +313 -> 315
    //   5: aload_3
    //   6: iload 6
    //   8: new 404	com/wowza/wms/stats/entry/StatsEntryVHost
    //   11: dup
    //   12: invokespecial 405	com/wowza/wms/stats/entry/StatsEntryVHost:<init>	()V
    //   15: aastore
    //   16: goto +538 -> 554
    //   19: aload 4
    //   21: iconst_0
    //   22: aaload
    //   23: iload 13
    //   25: iaload
    //   26: aload 12
    //   28: iload 13
    //   30: iaload
    //   31: if_icmple +584 -> 615
    //   34: goto +991 -> 1025
    //   37: aload_1
    //   38: iload_2
    //   39: iload 9
    //   41: aload 6
    //   43: aconst_null
    //   44: invokeinterface 463 5 0
    //   49: astore 7
    //   51: aload_0
    //   52: new 113	java/lang/StringBuilder
    //   55: dup
    //   56: invokespecial 114	java/lang/StringBuilder:<init>	()V
    //   59: bipush 59
    //   61: bipush 37
    //   63: imul
    //   64: ldc_w 465
    //   67: invokestatic 436	com/wowza/wms/rest/Severity:startsWith	(ILjava/lang/String;)Ljava/lang/String;
    //   70: invokevirtual 120	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   73: iload_2
    //   74: iload 9
    //   76: invokestatic 471	com/wowza/wms/stats/utils/StatsUtilsStrings:getTableAndLevelName	(II)Ljava/lang/String;
    //   79: invokevirtual 120	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   82: ldc_w 473
    //   85: bipush 96
    //   87: bipush -88
    //   89: swap
    //   90: iadd
    //   91: invokestatic 74	com/wowza/wms/rest/Utils:toString	(Ljava/lang/String;I)Ljava/lang/String;
    //   94: invokevirtual 120	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   97: aload 7
    //   99: invokeinterface 476 1 0
    //   104: invokevirtual 479	java/lang/StringBuilder:append	(I)Ljava/lang/StringBuilder;
    //   107: ldc_w 481
    //   110: bipush -19
    //   112: bipush -29
    //   114: isub
    //   115: invokestatic 74	com/wowza/wms/rest/Utils:toString	(Ljava/lang/String;I)Ljava/lang/String;
    //   118: invokevirtual 120	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   121: invokevirtual 129	java/lang/StringBuilder:toString	()Ljava/lang/String;
    //   124: invokevirtual 444	com/wowza/wms/stats/StatsManager:logDebug	(Ljava/lang/String;)V
    //   127: aload 7
    //   129: invokeinterface 197 1 0
    //   134: astore 10
    //   136: goto +290 -> 426
    //   139: iinc 6 1
    //   142: goto +716 -> 858
    //   145: goto +1132 -> 1277
    //   148: iload 7
    //   150: aload 4
    //   152: iconst_0
    //   153: aaload
    //   154: arraylength
    //   155: if_icmpge -16 -> 139
    //   158: goto +594 -> 752
    //   161: invokestatic 484	com/wowza/wms/stats/utils/StatsUtilsDateTime:getHoursOffsetFromUTC	()I
    //   164: istore 7
    //   166: invokestatic 487	com/wowza/wms/stats/utils/StatsUtilsDateTime:getNormalizedToDays	()Lorg/joda/time/DateTime;
    //   169: iload 7
    //   171: invokevirtual 491	org/joda/time/DateTime:plusHours	(I)Lorg/joda/time/DateTime;
    //   174: astore 6
    //   176: goto +445 -> 621
    //   179: goto +247 -> 426
    //   182: iload 7
    //   184: aload 4
    //   186: iconst_0
    //   187: aaload
    //   188: arraylength
    //   189: if_icmpge +423 -> 612
    //   192: goto +651 -> 843
    //   195: aload_1
    //   196: iload 8
    //   198: aload_3
    //   199: invokeinterface 495 3 0
    //   204: pop
    //   205: iinc 2 1
    //   208: iload_2
    //   209: iconst_3
    //   210: if_icmplt +105 -> 315
    //   213: goto +551 -> 764
    //   216: aload 10
    //   218: invokeinterface 232 1 0
    //   223: checkcast 497	com/wowza/wms/stats/entry/StatsEntry
    //   226: astore 11
    //   228: iload 9
    //   230: ifne +509 -> 739
    //   233: goto +137 -> 370
    //   236: iload 9
    //   238: iconst_2
    //   239: if_icmpne +976 -> 1215
    //   242: goto +543 -> 785
    //   245: iload 9
    //   247: aload 4
    //   249: iconst_2
    //   250: aaload
    //   251: arraylength
    //   252: if_icmpge +20 -> 272
    //   255: goto +801 -> 1056
    //   258: aload_3
    //   259: iload 6
    //   261: new 252	com/wowza/wms/stats/entry/StatsEntryMachine
    //   264: dup
    //   265: invokespecial 253	com/wowza/wms/stats/entry/StatsEntryMachine:<init>	()V
    //   268: aastore
    //   269: goto +285 -> 554
    //   272: goto +610 -> 882
    //   275: iload 9
    //   277: iconst_3
    //   278: if_icmpge +604 -> 882
    //   281: goto -244 -> 37
    //   284: aload 4
    //   286: iconst_0
    //   287: aaload
    //   288: iload 12
    //   290: iaload
    //   291: aload 11
    //   293: iload 12
    //   295: iaload
    //   296: if_icmple +112 -> 408
    //   299: goto +159 -> 458
    //   302: iload 7
    //   304: aload 4
    //   306: iconst_0
    //   307: aaload
    //   308: arraylength
    //   309: if_icmpge +731 -> 1040
    //   312: goto +645 -> 957
    //   315: iconst_3
    //   316: anewarray 497	com/wowza/wms/stats/entry/StatsEntry
    //   319: astore_3
    //   320: aconst_null
    //   321: checkcast 499	[[I
    //   324: astore 4
    //   326: aconst_null
    //   327: astore 5
    //   329: aload_0
    //   330: new 113	java/lang/StringBuilder
    //   333: dup
    //   334: invokespecial 114	java/lang/StringBuilder:<init>	()V
    //   337: bipush 32
    //   339: bipush 59
    //   341: isub
    //   342: ldc_w 501
    //   345: invokestatic 436	com/wowza/wms/rest/Severity:startsWith	(ILjava/lang/String;)Ljava/lang/String;
    //   348: invokevirtual 120	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   351: iload_2
    //   352: invokestatic 505	com/wowza/wms/stats/utils/StatsUtilsStrings:getLevelName	(I)Ljava/lang/String;
    //   355: invokevirtual 120	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   358: invokevirtual 129	java/lang/StringBuilder:toString	()Ljava/lang/String;
    //   361: invokevirtual 444	com/wowza/wms/stats/StatsManager:logDebug	(Ljava/lang/String;)V
    //   364: iconst_0
    //   365: istore 6
    //   367: goto +491 -> 858
    //   370: aload_0
    //   371: new 113	java/lang/StringBuilder
    //   374: dup
    //   375: invokespecial 114	java/lang/StringBuilder:<init>	()V
    //   378: ldc_w 507
    //   381: sipush 982
    //   384: sipush 192
    //   387: idiv
    //   388: invokestatic 74	com/wowza/wms/rest/Utils:toString	(Ljava/lang/String;I)Ljava/lang/String;
    //   391: invokevirtual 120	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   394: aload 11
    //   396: invokevirtual 439	java/lang/StringBuilder:append	(Ljava/lang/Object;)Ljava/lang/StringBuilder;
    //   399: invokevirtual 129	java/lang/StringBuilder:toString	()Ljava/lang/String;
    //   402: invokevirtual 444	com/wowza/wms/stats/StatsManager:logDebug	(Ljava/lang/String;)V
    //   405: goto +334 -> 739
    //   408: aload 4
    //   410: iconst_1
    //   411: aaload
    //   412: iload 12
    //   414: iaload
    //   415: aload 11
    //   417: iload 12
    //   419: iaload
    //   420: if_icmpge +403 -> 823
    //   423: goto +139 -> 562
    //   426: aload 10
    //   428: invokeinterface 178 1 0
    //   433: ifeq -197 -> 236
    //   436: goto -220 -> 216
    //   439: iload 13
    //   441: aload 11
    //   443: invokevirtual 510	com/wowza/wms/stats/entry/StatsEntry:getFieldCount	()I
    //   446: if_icmpge -267 -> 179
    //   449: goto +789 -> 1238
    //   452: iconst_0
    //   453: istore 9
    //   455: goto -210 -> 245
    //   458: aload 4
    //   460: iconst_0
    //   461: aaload
    //   462: iload 12
    //   464: aload 11
    //   466: iload 12
    //   468: iaload
    //   469: iastore
    //   470: goto -62 -> 408
    //   473: aload_1
    //   474: iload_2
    //   475: iconst_0
    //   476: aload 6
    //   478: aconst_null
    //   479: invokeinterface 463 5 0
    //   484: astore 7
    //   486: aload_0
    //   487: new 113	java/lang/StringBuilder
    //   490: dup
    //   491: invokespecial 114	java/lang/StringBuilder:<init>	()V
    //   494: sipush 417
    //   497: bipush 106
    //   499: idiv
    //   500: ldc_w 512
    //   503: invokestatic 436	com/wowza/wms/rest/Severity:startsWith	(ILjava/lang/String;)Ljava/lang/String;
    //   506: invokevirtual 120	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   509: aload 7
    //   511: invokeinterface 476 1 0
    //   516: invokevirtual 479	java/lang/StringBuilder:append	(I)Ljava/lang/StringBuilder;
    //   519: ldc_w 514
    //   522: bipush 101
    //   524: bipush -65
    //   526: iadd
    //   527: invokestatic 74	com/wowza/wms/rest/Utils:toString	(Ljava/lang/String;I)Ljava/lang/String;
    //   530: invokevirtual 120	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   533: invokevirtual 129	java/lang/StringBuilder:toString	()Ljava/lang/String;
    //   536: invokevirtual 444	com/wowza/wms/stats/StatsManager:logDebug	(Ljava/lang/String;)V
    //   539: iconst_0
    //   540: istore 8
    //   542: aload 7
    //   544: invokeinterface 197 1 0
    //   549: astore 9
    //   551: goto +726 -> 1277
    //   554: iload 6
    //   556: ifne +131 -> 687
    //   559: goto +415 -> 974
    //   562: aload 4
    //   564: iconst_1
    //   565: aaload
    //   566: iload 12
    //   568: aload 11
    //   570: iload 12
    //   572: iaload
    //   573: iastore
    //   574: goto +249 -> 823
    //   577: aload_3
    //   578: iload 6
    //   580: new 363	com/wowza/wms/stats/entry/StatsEntryServer
    //   583: dup
    //   584: invokespecial 364	com/wowza/wms/stats/entry/StatsEntryServer:<init>	()V
    //   587: aastore
    //   588: goto -34 -> 554
    //   591: iload 12
    //   593: aload 10
    //   595: invokevirtual 510	com/wowza/wms/stats/entry/StatsEntry:getFieldCount	()I
    //   598: if_icmpge -453 -> 145
    //   601: goto -317 -> 284
    //   604: invokestatic 517	com/wowza/wms/stats/utils/StatsUtilsDateTime:getNormalizedToMinutes	()Lorg/joda/time/DateTime;
    //   607: astore 6
    //   609: goto +12 -> 621
    //   612: goto -473 -> 139
    //   615: iinc 13 1
    //   618: goto -179 -> 439
    //   621: aconst_null
    //   622: astore 7
    //   624: aload_0
    //   625: new 113	java/lang/StringBuilder
    //   628: dup
    //   629: invokespecial 114	java/lang/StringBuilder:<init>	()V
    //   632: sipush 846
    //   635: bipush 121
    //   637: idiv
    //   638: ldc_w 519
    //   641: invokestatic 436	com/wowza/wms/rest/Severity:startsWith	(ILjava/lang/String;)Ljava/lang/String;
    //   644: invokevirtual 120	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   647: aload 6
    //   649: invokevirtual 439	java/lang/StringBuilder:append	(Ljava/lang/Object;)Ljava/lang/StringBuilder;
    //   652: invokevirtual 129	java/lang/StringBuilder:toString	()Ljava/lang/String;
    //   655: invokevirtual 444	com/wowza/wms/stats/StatsManager:logDebug	(Ljava/lang/String;)V
    //   658: iload_2
    //   659: tableswitch	default:+223->882, 0:+-186->473, 1:+208->867, 2:+208->867
    //   684: nop
    //   685: nop
    //   686: athrow
    //   687: iload 6
    //   689: tableswitch	default:+-550->139, 0:+582->1271, 1:+76->765, 2:+520->1209
    //   716: nop
    //   717: nop
    //   718: athrow
    //   719: aload_1
    //   720: instanceof 521
    //   723: ifeq +224 -> 947
    //   726: goto -149 -> 577
    //   729: aload_1
    //   730: instanceof 523
    //   733: ifeq +38 -> 771
    //   736: goto +348 -> 1084
    //   739: aload 11
    //   741: invokevirtual 527	com/wowza/wms/stats/entry/StatsEntry:getFieldData	()[I
    //   744: astore 12
    //   746: iconst_0
    //   747: istore 13
    //   749: goto -310 -> 439
    //   752: aload 5
    //   754: iload 7
    //   756: lconst_0
    //   757: lastore
    //   758: iinc 7 1
    //   761: goto -613 -> 148
    //   764: return
    //   765: iconst_0
    //   766: istore 7
    //   768: goto -586 -> 182
    //   771: aload_3
    //   772: iload 6
    //   774: new 497	com/wowza/wms/stats/entry/StatsEntry
    //   777: dup
    //   778: invokespecial 528	com/wowza/wms/stats/entry/StatsEntry:<init>	()V
    //   781: aastore
    //   782: goto -228 -> 554
    //   785: iconst_0
    //   786: istore 10
    //   788: goto +255 -> 1043
    //   791: aconst_null
    //   792: astore 6
    //   794: iload_2
    //   795: tableswitch	default:+-174->621, 0:+-191->604, 1:+495->1290, 2:+-634->161
    //   820: nop
    //   821: nop
    //   822: athrow
    //   823: aload 5
    //   825: iload 12
    //   827: dup2
    //   828: laload
    //   829: aload 11
    //   831: iload 12
    //   833: iaload
    //   834: i2l
    //   835: ladd
    //   836: lastore
    //   837: iinc 12 1
    //   840: goto -249 -> 591
    //   843: aload 4
    //   845: iload 6
    //   847: aaload
    //   848: iload 7
    //   850: iconst_0
    //   851: iastore
    //   852: iinc 7 1
    //   855: goto -673 -> 182
    //   858: iload 6
    //   860: iconst_3
    //   861: if_icmpge -70 -> 791
    //   864: goto -145 -> 719
    //   867: iconst_0
    //   868: istore 9
    //   870: goto -595 -> 275
    //   873: iload 9
    //   875: iconst_3
    //   876: if_icmpge -681 -> 195
    //   879: goto +247 -> 1126
    //   882: iload_2
    //   883: iconst_1
    //   884: iadd
    //   885: istore 8
    //   887: aload_0
    //   888: new 113	java/lang/StringBuilder
    //   891: dup
    //   892: invokespecial 114	java/lang/StringBuilder:<init>	()V
    //   895: ldc_w 530
    //   898: bipush 43
    //   900: bipush 62
    //   902: isub
    //   903: invokestatic 74	com/wowza/wms/rest/Utils:toString	(Ljava/lang/String;I)Ljava/lang/String;
    //   906: invokevirtual 120	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   909: iload 8
    //   911: invokestatic 505	com/wowza/wms/stats/utils/StatsUtilsStrings:getLevelName	(I)Ljava/lang/String;
    //   914: invokevirtual 120	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   917: invokevirtual 129	java/lang/StringBuilder:toString	()Ljava/lang/String;
    //   920: invokevirtual 444	com/wowza/wms/stats/StatsManager:logDebug	(Ljava/lang/String;)V
    //   923: iconst_0
    //   924: istore 9
    //   926: goto -53 -> 873
    //   929: aload 4
    //   931: iconst_1
    //   932: aaload
    //   933: iload 13
    //   935: iaload
    //   936: aload 12
    //   938: iload 13
    //   940: iaload
    //   941: if_icmpge -326 -> 615
    //   944: goto +66 -> 1010
    //   947: aload_1
    //   948: instanceof 532
    //   951: ifeq +49 -> 1000
    //   954: goto -696 -> 258
    //   957: aload 4
    //   959: iload 6
    //   961: aaload
    //   962: iload 7
    //   964: ldc_w 533
    //   967: iastore
    //   968: iinc 7 1
    //   971: goto -669 -> 302
    //   974: iconst_3
    //   975: aload_3
    //   976: iconst_0
    //   977: aaload
    //   978: invokevirtual 510	com/wowza/wms/stats/entry/StatsEntry:getFieldCount	()I
    //   981: multianewarray 499 2
    //   985: astore 4
    //   987: aload_3
    //   988: iconst_0
    //   989: aaload
    //   990: invokevirtual 510	com/wowza/wms/stats/entry/StatsEntry:getFieldCount	()I
    //   993: newarray <illegal type>
    //   995: astore 5
    //   997: goto -310 -> 687
    //   1000: aload_1
    //   1001: instanceof 535
    //   1004: ifeq -275 -> 729
    //   1007: goto -1002 -> 5
    //   1010: aload 4
    //   1012: iconst_1
    //   1013: aaload
    //   1014: iload 13
    //   1016: aload 12
    //   1018: iload 13
    //   1020: iaload
    //   1021: iastore
    //   1022: goto -407 -> 615
    //   1025: aload 4
    //   1027: iconst_0
    //   1028: aaload
    //   1029: iload 13
    //   1031: aload 12
    //   1033: iload 13
    //   1035: iaload
    //   1036: iastore
    //   1037: goto -422 -> 615
    //   1040: goto -901 -> 139
    //   1043: iload 10
    //   1045: aload 4
    //   1047: iconst_2
    //   1048: aaload
    //   1049: arraylength
    //   1050: if_icmpge +165 -> 1215
    //   1053: goto +45 -> 1098
    //   1056: aload 4
    //   1058: iconst_2
    //   1059: aaload
    //   1060: iload 9
    //   1062: aload 5
    //   1064: iload 9
    //   1066: laload
    //   1067: aload 7
    //   1069: invokeinterface 476 1 0
    //   1074: i2l
    //   1075: ldiv
    //   1076: l2i
    //   1077: iastore
    //   1078: iinc 9 1
    //   1081: goto -836 -> 245
    //   1084: aload_3
    //   1085: iload 6
    //   1087: new 299	com/wowza/wms/stats/entry/StatsEntryApplication
    //   1090: dup
    //   1091: invokespecial 300	com/wowza/wms/stats/entry/StatsEntryApplication:<init>	()V
    //   1094: aastore
    //   1095: goto -541 -> 554
    //   1098: aload 4
    //   1100: iconst_2
    //   1101: aaload
    //   1102: iload 10
    //   1104: aload 5
    //   1106: iload 10
    //   1108: laload
    //   1109: aload 7
    //   1111: invokeinterface 476 1 0
    //   1116: i2l
    //   1117: ldiv
    //   1118: l2i
    //   1119: iastore
    //   1120: iinc 10 1
    //   1123: goto -80 -> 1043
    //   1126: aload_3
    //   1127: iload 9
    //   1129: aaload
    //   1130: aload 4
    //   1132: iload 9
    //   1134: aaload
    //   1135: invokevirtual 539	com/wowza/wms/stats/entry/StatsEntry:setFieldData	([I)V
    //   1138: aload_3
    //   1139: iload 9
    //   1141: aaload
    //   1142: aload 6
    //   1144: invokevirtual 540	com/wowza/wms/stats/entry/StatsEntry:setDateTime	(Lorg/joda/time/DateTime;)V
    //   1147: aload_0
    //   1148: new 113	java/lang/StringBuilder
    //   1151: dup
    //   1152: invokespecial 114	java/lang/StringBuilder:<init>	()V
    //   1155: bipush 124
    //   1157: bipush 100
    //   1159: iadd
    //   1160: ldc_w 542
    //   1163: invokestatic 436	com/wowza/wms/rest/Severity:startsWith	(ILjava/lang/String;)Ljava/lang/String;
    //   1166: invokevirtual 120	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   1169: iload 9
    //   1171: invokestatic 545	com/wowza/wms/stats/utils/StatsUtilsStrings:getTableName	(I)Ljava/lang/String;
    //   1174: invokevirtual 120	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   1177: ldc_w 547
    //   1180: iconst_m1
    //   1181: bipush -22
    //   1183: isub
    //   1184: invokestatic 74	com/wowza/wms/rest/Utils:toString	(Ljava/lang/String;I)Ljava/lang/String;
    //   1187: invokevirtual 120	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   1190: aload_3
    //   1191: iload 9
    //   1193: aaload
    //   1194: invokevirtual 439	java/lang/StringBuilder:append	(Ljava/lang/Object;)Ljava/lang/StringBuilder;
    //   1197: invokevirtual 129	java/lang/StringBuilder:toString	()Ljava/lang/String;
    //   1200: invokevirtual 444	com/wowza/wms/stats/StatsManager:logDebug	(Ljava/lang/String;)V
    //   1203: iinc 9 1
    //   1206: goto -333 -> 873
    //   1209: iconst_0
    //   1210: istore 7
    //   1212: goto -1064 -> 148
    //   1215: iinc 9 1
    //   1218: goto -943 -> 275
    //   1221: aload 5
    //   1223: iload 13
    //   1225: dup2
    //   1226: laload
    //   1227: aload 12
    //   1229: iload 13
    //   1231: iaload
    //   1232: i2l
    //   1233: ladd
    //   1234: lastore
    //   1235: goto -620 -> 615
    //   1238: iload 9
    //   1240: tableswitch	default:+-625->615, 0:+-1221->19, 1:+-311->929, 2:+-19->1221
    //   1268: nop
    //   1269: nop
    //   1270: athrow
    //   1271: iconst_0
    //   1272: istore 7
    //   1274: goto -972 -> 302
    //   1277: aload 9
    //   1279: invokeinterface 178 1 0
    //   1284: ifeq -832 -> 452
    //   1287: goto +11 -> 1298
    //   1290: invokestatic 550	com/wowza/wms/stats/utils/StatsUtilsDateTime:getNormalizedToHours	()Lorg/joda/time/DateTime;
    //   1293: astore 6
    //   1295: goto -674 -> 621
    //   1298: aload 9
    //   1300: invokeinterface 232 1 0
    //   1305: checkcast 497	com/wowza/wms/stats/entry/StatsEntry
    //   1308: astore 10
    //   1310: aload_0
    //   1311: new 113	java/lang/StringBuilder
    //   1314: dup
    //   1315: invokespecial 114	java/lang/StringBuilder:<init>	()V
    //   1318: bipush 49
    //   1320: bipush 13
    //   1322: swap
    //   1323: imul
    //   1324: ldc_w 552
    //   1327: invokestatic 436	com/wowza/wms/rest/Severity:startsWith	(ILjava/lang/String;)Ljava/lang/String;
    //   1330: invokevirtual 120	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   1333: aload 10
    //   1335: invokevirtual 439	java/lang/StringBuilder:append	(Ljava/lang/Object;)Ljava/lang/StringBuilder;
    //   1338: invokevirtual 129	java/lang/StringBuilder:toString	()Ljava/lang/String;
    //   1341: invokevirtual 444	com/wowza/wms/stats/StatsManager:logDebug	(Ljava/lang/String;)V
    //   1344: aload 10
    //   1346: invokevirtual 527	com/wowza/wms/stats/entry/StatsEntry:getFieldData	()[I
    //   1349: astore 11
    //   1351: iconst_0
    //   1352: istore 12
    //   1354: goto -763 -> 591
  }
  
  public void logDebug(String paramString)
  {
    if (!g) {}
    for (;;)
    {
      return;
      WMSLoggerFactory.getLogger(null).info(Severity.startsWith(39 * 49, "\004,8.(\021<0>gdp9") + paramString);
    }
  }
  
  public void logInfo(String paramString)
  {
    WMSLoggerFactory.getLogger(null).info(Severity.startsWith(25 + 45, "\0253)=9\006-#/(5#h") + paramString);
  }
  
  public void logWarn(String paramString)
  {
    WMSLoggerFactory.getLogger(null).warn(Severity.startsWith(18 + 43, "Nj~42\017\"*$!\":s") + paramString);
  }
  
  public void logError(String paramString)
  {
    WMSLoggerFactory.getLogger(null).error(Severity.startsWith(29 * 15, "@`tbdUxtz{xl%") + paramString);
  }
  
  public boolean isEnabled()
  {
    return a;
  }
  
  private class StatsManagerWorker
    implements Runnable
  {
    private StatsManagerWorker() {}
    
    /* Error */
    public void run()
    {
      // Byte code:
      //   0: invokestatic 29	java/lang/Thread:currentThread	()Ljava/lang/Thread;
      //   3: invokevirtual 33	java/lang/Thread:getName	()Ljava/lang/String;
      //   6: astore_1
      //   7: invokestatic 29	java/lang/Thread:currentThread	()Ljava/lang/Thread;
      //   10: ldc 35
      //   12: sipush 417
      //   15: bipush 62
      //   17: idiv
      //   18: invokestatic 41	com/wowza/wms/rest/Utils:toString	(Ljava/lang/String;I)Ljava/lang/String;
      //   21: invokevirtual 45	java/lang/Thread:setName	(Ljava/lang/String;)V
      //   24: aload_0
      //   25: sipush 643
      //   28: bipush 95
      //   30: idiv
      //   31: ldc 47
      //   33: invokestatic 53	com/wowza/wms/rest/Severity:startsWith	(ILjava/lang/String;)Ljava/lang/String;
      //   36: invokevirtual 56	com/wowza/wms/stats/StatsManager$StatsManagerWorker:logDebug	(Ljava/lang/String;)V
      //   39: goto +38 -> 77
      //   42: aload_0
      //   43: getfield 17	com/wowza/wms/stats/StatsManager$StatsManagerWorker:a	Lcom/wowza/wms/stats/StatsManager;
      //   46: iconst_0
      //   47: invokestatic 59	com/wowza/wms/stats/StatsManager:a	(Lcom/wowza/wms/stats/StatsManager;Z)Z
      //   50: pop
      //   51: aload_0
      //   52: sipush 353
      //   55: bipush 88
      //   57: idiv
      //   58: ldc 61
      //   60: invokestatic 53	com/wowza/wms/rest/Severity:startsWith	(ILjava/lang/String;)Ljava/lang/String;
      //   63: invokevirtual 56	com/wowza/wms/stats/StatsManager$StatsManagerWorker:logDebug	(Ljava/lang/String;)V
      //   66: invokestatic 29	java/lang/Thread:currentThread	()Ljava/lang/Thread;
      //   69: aload_1
      //   70: invokevirtual 45	java/lang/Thread:setName	(Ljava/lang/String;)V
      //   73: return
      //   74: goto -32 -> 42
      //   77: aload_0
      //   78: getfield 17	com/wowza/wms/stats/StatsManager$StatsManagerWorker:a	Lcom/wowza/wms/stats/StatsManager;
      //   81: invokestatic 64	com/wowza/wms/stats/StatsManager:a	(Lcom/wowza/wms/stats/StatsManager;)Lcom/wowza/wms/stats/database/IStatsDatabaseManager;
      //   84: invo
1 2 3 4 5 6 7 8

Further reading...

For more information on Java 1.5 Tiger, you may find Java 1.5 Tiger, A developer's Notebook by D. Flanagan and B. McLaughlin from O'Reilly of interest.

New!JAR listings


Copyright 2006-2019. Infinite Loop Ltd