MultiDex$V14$JBMR2ElementConstructor.smali 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143
  1. .class Landroid/support/multidex/MultiDex$V14$JBMR2ElementConstructor;
  2. .super Ljava/lang/Object;
  3. .source "MultiDex.java"
  4. # interfaces
  5. .implements Landroid/support/multidex/MultiDex$V14$ElementConstructor;
  6. # annotations
  7. .annotation system Ldalvik/annotation/EnclosingClass;
  8. value = Landroid/support/multidex/MultiDex$V14;
  9. .end annotation
  10. .annotation system Ldalvik/annotation/InnerClass;
  11. accessFlags = 0xa
  12. name = "JBMR2ElementConstructor"
  13. .end annotation
  14. # instance fields
  15. .field private final elementConstructor:Ljava/lang/reflect/Constructor;
  16. .annotation system Ldalvik/annotation/Signature;
  17. value = {
  18. "Ljava/lang/reflect/Constructor<",
  19. "*>;"
  20. }
  21. .end annotation
  22. .end field
  23. # direct methods
  24. .method constructor <init>(Ljava/lang/Class;)V
  25. .locals 4
  26. .annotation system Ldalvik/annotation/Signature;
  27. value = {
  28. "(",
  29. "Ljava/lang/Class<",
  30. "*>;)V"
  31. }
  32. .end annotation
  33. .annotation system Ldalvik/annotation/Throws;
  34. value = {
  35. Ljava/lang/SecurityException;,
  36. Ljava/lang/NoSuchMethodException;
  37. }
  38. .end annotation
  39. .line 629
  40. .local p1, "elementClass":Ljava/lang/Class;, "Ljava/lang/Class<*>;"
  41. invoke-direct {p0}, Ljava/lang/Object;-><init>()V
  42. .line 630
  43. const/4 v0, 0x4
  44. new-array v0, v0, [Ljava/lang/Class;
  45. const-class v1, Ljava/io/File;
  46. const/4 v2, 0x0
  47. aput-object v1, v0, v2
  48. sget-object v1, Ljava/lang/Boolean;->TYPE:Ljava/lang/Class;
  49. const/4 v2, 0x1
  50. aput-object v1, v0, v2
  51. const-class v1, Ljava/io/File;
  52. const/4 v3, 0x2
  53. aput-object v1, v0, v3
  54. const-class v1, Ldalvik/system/DexFile;
  55. const/4 v3, 0x3
  56. aput-object v1, v0, v3
  57. .line 631
  58. invoke-virtual {p1, v0}, Ljava/lang/Class;->getConstructor([Ljava/lang/Class;)Ljava/lang/reflect/Constructor;
  59. move-result-object v0
  60. iput-object v0, p0, Landroid/support/multidex/MultiDex$V14$JBMR2ElementConstructor;->elementConstructor:Ljava/lang/reflect/Constructor;
  61. .line 632
  62. iget-object v0, p0, Landroid/support/multidex/MultiDex$V14$JBMR2ElementConstructor;->elementConstructor:Ljava/lang/reflect/Constructor;
  63. invoke-virtual {v0, v2}, Ljava/lang/reflect/Constructor;->setAccessible(Z)V
  64. .line 633
  65. return-void
  66. .end method
  67. # virtual methods
  68. .method public newInstance(Ljava/io/File;Ldalvik/system/DexFile;)Ljava/lang/Object;
  69. .locals 4
  70. .param p1, "file" # Ljava/io/File;
  71. .param p2, "dex" # Ldalvik/system/DexFile;
  72. .annotation system Ldalvik/annotation/Throws;
  73. value = {
  74. Ljava/lang/IllegalArgumentException;,
  75. Ljava/lang/InstantiationException;,
  76. Ljava/lang/IllegalAccessException;,
  77. Ljava/lang/reflect/InvocationTargetException;
  78. }
  79. .end annotation
  80. .line 639
  81. iget-object v0, p0, Landroid/support/multidex/MultiDex$V14$JBMR2ElementConstructor;->elementConstructor:Ljava/lang/reflect/Constructor;
  82. const/4 v1, 0x4
  83. new-array v1, v1, [Ljava/lang/Object;
  84. const/4 v2, 0x0
  85. aput-object p1, v1, v2
  86. sget-object v2, Ljava/lang/Boolean;->FALSE:Ljava/lang/Boolean;
  87. const/4 v3, 0x1
  88. aput-object v2, v1, v3
  89. const/4 v2, 0x2
  90. aput-object p1, v1, v2
  91. const/4 v2, 0x3
  92. aput-object p2, v1, v2
  93. invoke-virtual {v0, v1}, Ljava/lang/reflect/Constructor;->newInstance([Ljava/lang/Object;)Ljava/lang/Object;
  94. move-result-object v0
  95. return-object v0
  96. .end method