public class com.android.printservice.recommendation.RecommendationServiceImpl extends android.printservice.recommendation.RecommendationService implements com.android.printservice.recommendation.RemotePrintServicePlugin$OnChangedListener
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: com.android.printservice.recommendation.RecommendationServiceImpl
  super_class: android.printservice.recommendation.RecommendationService
{
  private static final java.lang.String LOG_TAG;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "PrintServiceRecService"

  private java.util.ArrayList<com.android.printservice.recommendation.RemotePrintServicePlugin> mPlugins;
    descriptor: Ljava/util/ArrayList;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/ArrayList<Lcom/android/printservice/recommendation/RemotePrintServicePlugin;>;

  private android.net.wifi.WifiManager$MulticastLock mMultiCastLock;
    descriptor: Landroid/net/wifi/WifiManager$MulticastLock;
    flags: (0x0002) ACC_PRIVATE

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.android.printservice.recommendation.RecommendationServiceImpl this
         0: .line 44
            aload 0 /* this */
            invokespecial android.printservice.recommendation.RecommendationService.<init>:()V
            return
        end local 0 // com.android.printservice.recommendation.RecommendationServiceImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/android/printservice/recommendation/RecommendationServiceImpl;

  public void onConnected();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // com.android.printservice.recommendation.RecommendationServiceImpl this
         0: .line 68
            new java.lang.Error
            dup
            ldc "Unresolved compilation problems: \n\tThe method getAllConfigs(Context) from the type VendorConfig refers to the missing type XmlPullParserException\n\tNo exception of type Object can be thrown; an exception type must be a subclass of Throwable\n\tXmlPullParserException cannot be resolved to a type\n\tThe constructor RuntimeException(String, Object) is undefined\n\tR cannot be resolved to a variable\n\tR cannot be resolved to a variable\n\tR cannot be resolved to a variable\n\tR cannot be resolved to a variable\n\tR cannot be resolved to a variable\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // com.android.printservice.recommendation.RecommendationServiceImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/android/printservice/recommendation/RecommendationServiceImpl;

  public void onDisconnected();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=1
        start local 0 // com.android.printservice.recommendation.RecommendationServiceImpl this
         0: .line 133
            aload 0 /* this */
            getfield com.android.printservice.recommendation.RecommendationServiceImpl.mPlugins:Ljava/util/ArrayList;
            invokevirtual java.util.ArrayList.size:()I
            istore 1 /* numPlugins */
        start local 1 // int numPlugins
         1: .line 134
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         2: goto 8
         3: .line 136
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield com.android.printservice.recommendation.RecommendationServiceImpl.mPlugins:Ljava/util/ArrayList;
            iload 2 /* i */
            invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
            checkcast com.android.printservice.recommendation.RemotePrintServicePlugin
            invokevirtual com.android.printservice.recommendation.RemotePrintServicePlugin.stop:()V
         4: .line 137
            goto 7
      StackMap locals:
      StackMap stack: com.android.printservice.recommendation.RemotePrintServicePlugin$PluginException
         5: astore 3 /* e */
        start local 3 // com.android.printservice.recommendation.RemotePrintServicePlugin$PluginException e
         6: .line 138
            ldc "PrintServiceRecService"
            ldc "Could not stop plugin"
            aload 3 /* e */
            invokestatic android.util.Log.e:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
            pop
        end local 3 // com.android.printservice.recommendation.RemotePrintServicePlugin$PluginException e
         7: .line 134
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         8: iload 2 /* i */
            iload 1 /* numPlugins */
            if_icmplt 3
        end local 2 // int i
         9: .line 142
            aload 0 /* this */
            getfield com.android.printservice.recommendation.RecommendationServiceImpl.mMultiCastLock:Landroid/net/wifi/WifiManager$MulticastLock;
            ifnull 11
        10: .line 143
            aload 0 /* this */
            getfield com.android.printservice.recommendation.RecommendationServiceImpl.mMultiCastLock:Landroid/net/wifi/WifiManager$MulticastLock;
            invokevirtual android.net.wifi.WifiManager$MulticastLock.release:()V
        11: .line 145
      StackMap locals:
      StackMap stack:
            return
        end local 1 // int numPlugins
        end local 0 // com.android.printservice.recommendation.RecommendationServiceImpl this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   12     0        this  Lcom/android/printservice/recommendation/RecommendationServiceImpl;
            1   12     1  numPlugins  I
            2    9     2           i  I
            6    7     3           e  Lcom/android/printservice/recommendation/RemotePrintServicePlugin$PluginException;
      Exception table:
        from    to  target  type
           3     4       5  Class com.android.printservice.recommendation.RemotePrintServicePlugin$PluginException

  public void onConfigurationChanged(android.content.res.Configuration);
    descriptor: (Landroid/content/res/Configuration;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // com.android.printservice.recommendation.RecommendationServiceImpl this
        start local 1 // android.content.res.Configuration newConfig
         0: .line 150
            aload 0 /* this */
            invokevirtual com.android.printservice.recommendation.RecommendationServiceImpl.onChanged:()V
         1: .line 151
            return
        end local 1 // android.content.res.Configuration newConfig
        end local 0 // com.android.printservice.recommendation.RecommendationServiceImpl this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Lcom/android/printservice/recommendation/RecommendationServiceImpl;
            0    2     1  newConfig  Landroid/content/res/Configuration;
    MethodParameters:
           Name  Flags
      newConfig  

  public void onChanged();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=6, args_size=1
        start local 0 // com.android.printservice.recommendation.RecommendationServiceImpl this
         0: .line 155
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 1 /* recommendations */
        start local 1 // java.util.ArrayList recommendations
         1: .line 157
            aload 0 /* this */
            getfield com.android.printservice.recommendation.RecommendationServiceImpl.mPlugins:Ljava/util/ArrayList;
            invokevirtual java.util.ArrayList.size:()I
            istore 2 /* numPlugins */
        start local 2 // int numPlugins
         2: .line 158
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         3: goto 14
         4: .line 159
      StackMap locals: java.util.ArrayList int int
      StackMap stack:
            aload 0 /* this */
            getfield com.android.printservice.recommendation.RecommendationServiceImpl.mPlugins:Ljava/util/ArrayList;
            iload 3 /* i */
            invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
            checkcast com.android.printservice.recommendation.RemotePrintServicePlugin
            astore 4 /* plugin */
        start local 4 // com.android.printservice.recommendation.RemotePrintServicePlugin plugin
         5: .line 162
            aload 4 /* plugin */
            invokevirtual com.android.printservice.recommendation.RemotePrintServicePlugin.getPrinters:()Ljava/util/List;
            astore 5 /* printers */
        start local 5 // java.util.List printers
         6: .line 164
            aload 5 /* printers */
            invokeinterface java.util.List.isEmpty:()Z
            ifne 13
         7: .line 165
            aload 1 /* recommendations */
            new android.printservice.recommendation.RecommendationInfo
            dup
            aload 4 /* plugin */
            getfield com.android.printservice.recommendation.RemotePrintServicePlugin.packageName:Ljava/lang/CharSequence;
         8: .line 166
            aload 0 /* this */
            aload 4 /* plugin */
            getfield com.android.printservice.recommendation.RemotePrintServicePlugin.name:I
            invokevirtual com.android.printservice.recommendation.RecommendationServiceImpl.getString:(I)Ljava/lang/String;
            aload 5 /* printers */
            aload 4 /* plugin */
            getfield com.android.printservice.recommendation.RemotePrintServicePlugin.recommendsMultiVendorService:Z
            invokespecial android.printservice.recommendation.RecommendationInfo.<init>:(Ljava/lang/CharSequence;Ljava/lang/CharSequence;Ljava/util/List;Z)V
         9: .line 165
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
        end local 5 // java.util.List printers
        10: .line 168
            goto 13
      StackMap locals: com.android.printservice.recommendation.RecommendationServiceImpl java.util.ArrayList int int com.android.printservice.recommendation.RemotePrintServicePlugin
      StackMap stack: java.lang.Exception
        11: astore 5 /* e */
        start local 5 // java.lang.Exception e
        12: .line 169
            ldc "PrintServiceRecService"
            new java.lang.StringBuilder
            dup
            ldc "Could not read state of plugin for "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 4 /* plugin */
            getfield com.android.printservice.recommendation.RemotePrintServicePlugin.packageName:Ljava/lang/CharSequence;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aload 5 /* e */
            invokestatic android.util.Log.e:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
            pop
        end local 5 // java.lang.Exception e
        end local 4 // com.android.printservice.recommendation.RemotePrintServicePlugin plugin
        13: .line 158
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        14: iload 3 /* i */
            iload 2 /* numPlugins */
            if_icmplt 4
        end local 3 // int i
        15: .line 173
            aload 0 /* this */
            aload 1 /* recommendations */
            invokevirtual com.android.printservice.recommendation.RecommendationServiceImpl.updateRecommendations:(Ljava/util/List;)V
        16: .line 174
            return
        end local 2 // int numPlugins
        end local 1 // java.util.ArrayList recommendations
        end local 0 // com.android.printservice.recommendation.RecommendationServiceImpl this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   17     0             this  Lcom/android/printservice/recommendation/RecommendationServiceImpl;
            1   17     1  recommendations  Ljava/util/ArrayList<Landroid/printservice/recommendation/RecommendationInfo;>;
            2   17     2       numPlugins  I
            3   15     3                i  I
            5   13     4           plugin  Lcom/android/printservice/recommendation/RemotePrintServicePlugin;
            6   10     5         printers  Ljava/util/List<Ljava/net/InetAddress;>;
           12   13     5                e  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
           5    10      11  Class java.lang.Exception
}
SourceFile: "RecommendationServiceImpl.java"
InnerClasses:
  public MulticastLock = android.net.wifi.WifiManager$MulticastLock of android.net.wifi.WifiManager
  public abstract OnChangedListener = com.android.printservice.recommendation.RemotePrintServicePlugin$OnChangedListener of com.android.printservice.recommendation.RemotePrintServicePlugin
  public PluginException = com.android.printservice.recommendation.RemotePrintServicePlugin$PluginException of com.android.printservice.recommendation.RemotePrintServicePlugin