// Decompiled by Jad v1.5.8e. Copyright 2001 Pavel Kouznetsov. // Jad home page: http://www.geocities.com/kpdus/jad.html // Decompiler options: braces fieldsfirst space lnc package com.olio.data.object.analytics; import android.content.Context; import com.olio.state.CurrentDevice; import com.olio.util.ALog; import java.io.BufferedReader; import java.io.FileNotFoundException; import java.io.FileReader; import java.io.IOException; // Referenced classes of package com.olio.data.object.analytics: // AnalyticsLogger, PropertyAppender, AnalyticsLog public class InterruptsLogger implements AnalyticsLogger { private static final String INTERRUPTS_FILE = "/proc/interrupts"; private static InterruptsLogger mInstance = null; private Context mContext; private InterruptsLogger() { } public static InterruptsLogger getInstance() { if (mInstance == null) { mInstance = new InterruptsLogger(); } return mInstance; } private void updateAppenders(Long long1, boolean flag, boolean flag1) { BufferedReader bufferedreader = new BufferedReader(new FileReader("/proc/interrupts")); _L1: String s = bufferedreader.readLine(); if (s == null) { break MISSING_BLOCK_LABEL_179; } String as[]; label0: { as = s.trim().split("[ :]+"); if (as.length >= 4) { break label0; } ALog.w("Invalid /proc/interrupts line.", new Object[0]); } goto _L1 PropertyAppender propertyappender; try { propertyappender = PropertyAppender.propertyAppenderForName(as[3], mContext); ALog.d("Adding IRQ: %s-%s", new Object[] { as[3], as[1] }); propertyappender.addData(Long.parseLong(as[1]), long1.longValue()); } // Misplaced declaration of an exception variable catch (Long long1) { ALog.e("Could not find interrupt file.", long1, new Object[0]); return; } // Misplaced declaration of an exception variable catch (Long long1) { ALog.e("Could not read interrupt file.", long1, new Object[0]); return; } if (!flag1) goto _L3; else goto _L2 _L2: AnalyticsLog.logInterrupts(long1, CurrentDevice.getSoftwareVersion(), as[3], Long.valueOf(propertyappender.getProperyValue()), mContext.getContentResolver()); _L3: if (!flag) goto _L1; else goto _L4 _L4: propertyappender.clear(); goto _L1 bufferedreader.close(); return; } public void onSessionEnd(Long long1) { updateAppenders(long1, true, true); } public void onUpdate(Long long1) { updateAppenders(long1, false, false); } public void register(Context context) { mContext = context; } public void resetLogs() { updateAppenders(new Long(0L), true, false); } }