JexlEngine.smali
.class public abstract Lorg/apache/commons/jexl3/JexlEngine;
.super Ljava/lang/Object;
.source "SourceFile"
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Lorg/apache/commons/jexl3/JexlEngine$Options;
}
.end annotation
# static fields
.field public static final CONTEXT:Ljava/lang/ThreadLocal;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/lang/ThreadLocal<",
"Lorg/apache/commons/jexl3/JexlContext$ThreadLocal;",
">;"
}
.end annotation
.end field
.field public static final EMPTY_CONTEXT:Lorg/apache/commons/jexl3/JexlContext;
.field public static final EMPTY_NS:Lorg/apache/commons/jexl3/JexlContext$NamespaceResolver;
.field private static final JXLT_CACHE_SIZE:I = 0x100
.field public static final TRY_FAILED:Ljava/lang/Object;
# direct methods
.method public static constructor <clinit>()V
.registers 1
.line 1
new-instance v0, Lorg/apache/commons/jexl3/JexlEngine$1;
invoke-direct {v0}, Lorg/apache/commons/jexl3/JexlEngine$1;-><init>()V
sput-object v0, Lorg/apache/commons/jexl3/JexlEngine;->TRY_FAILED:Ljava/lang/Object;
.line 2
new-instance v0, Lorg/apache/commons/jexl3/JexlEngine$2;
invoke-direct {v0}, Lorg/apache/commons/jexl3/JexlEngine$2;-><init>()V
sput-object v0, Lorg/apache/commons/jexl3/JexlEngine;->CONTEXT:Ljava/lang/ThreadLocal;
.line 3
new-instance v0, Lorg/apache/commons/jexl3/JexlEngine$3;
invoke-direct {v0}, Lorg/apache/commons/jexl3/JexlEngine$3;-><init>()V
sput-object v0, Lorg/apache/commons/jexl3/JexlEngine;->EMPTY_CONTEXT:Lorg/apache/commons/jexl3/JexlContext;
.line 4
new-instance v0, Lorg/apache/commons/jexl3/JexlEngine$4;
invoke-direct {v0}, Lorg/apache/commons/jexl3/JexlEngine$4;-><init>()V
sput-object v0, Lorg/apache/commons/jexl3/JexlEngine;->EMPTY_NS:Lorg/apache/commons/jexl3/JexlContext$NamespaceResolver;
return-void
.end method
.method public constructor <init>()V
.registers 1
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
.method public static getThreadContext()Lorg/apache/commons/jexl3/JexlContext$ThreadLocal;
.registers 1
sget-object v0, Lorg/apache/commons/jexl3/JexlEngine;->CONTEXT:Ljava/lang/ThreadLocal;
invoke-virtual {v0}, Ljava/lang/ThreadLocal;->get()Ljava/lang/Object;
move-result-object v0
check-cast v0, Lorg/apache/commons/jexl3/JexlContext$ThreadLocal;
return-object v0
.end method
.method public static setThreadContext(Lorg/apache/commons/jexl3/JexlContext$ThreadLocal;)V
.registers 2
sget-object v0, Lorg/apache/commons/jexl3/JexlEngine;->CONTEXT:Ljava/lang/ThreadLocal;
invoke-virtual {v0, p0}, Ljava/lang/ThreadLocal;->set(Ljava/lang/Object;)V
return-void
.end method
.method public static toString(Ljava/io/BufferedReader;)Ljava/lang/String;
.registers 3
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/io/IOException;
}
.end annotation
.line 1
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
.line 2
:goto_5
invoke-virtual {p0}, Ljava/io/BufferedReader;->readLine()Ljava/lang/String;
move-result-object v1
if-eqz v1, :cond_14
.line 3
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const/16 v1, 0xa
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
goto :goto_5
.line 4
:cond_14
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p0
return-object p0
.end method
# virtual methods
.method public abstract clearCache()V
.end method
.method public final createExpression(Ljava/lang/String;)Lorg/apache/commons/jexl3/JexlExpression;
.registers 3
const/4 v0, 0x0
invoke-virtual {p0, v0, p1}, Lorg/apache/commons/jexl3/JexlEngine;->createExpression(Lorg/apache/commons/jexl3/JexlInfo;Ljava/lang/String;)Lorg/apache/commons/jexl3/JexlExpression;
move-result-object p1
return-object p1
.end method
.method public abstract createExpression(Lorg/apache/commons/jexl3/JexlInfo;Ljava/lang/String;)Lorg/apache/commons/jexl3/JexlExpression;
.end method
.method public createInfo()Lorg/apache/commons/jexl3/JexlInfo;
.registers 8
.line 2
new-instance v0, Ljava/lang/Throwable;
invoke-direct {v0}, Ljava/lang/Throwable;-><init>()V
invoke-virtual {v0}, Ljava/lang/Throwable;->getStackTrace()[Ljava/lang/StackTraceElement;
move-result-object v0
.line 3
invoke-virtual {p0}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
move-result-object v1
invoke-virtual {v1}, Ljava/lang/Class;->getName()Ljava/lang/String;
move-result-object v1
const/4 v2, 0x1
const/4 v3, 0x0
move-object v4, v3
.line 4
:goto_14
array-length v5, v0
if-ge v2, v5, :cond_37
.line 5
aget-object v4, v0, v2
.line 6
invoke-virtual {v4}, Ljava/lang/StackTraceElement;->getClassName()Ljava/lang/String;
move-result-object v5
.line 7
invoke-virtual {v5, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v6
if-nez v6, :cond_34
const-string v1, "org.apache.commons.jexl3.internal."
.line 8
invoke-virtual {v5, v1}, Ljava/lang/String;->startsWith(Ljava/lang/String;)Z
move-result v1
if-nez v1, :cond_33
const-string v1, "org.apache.commons.jexl3.J"
invoke-virtual {v5, v1}, Ljava/lang/String;->startsWith(Ljava/lang/String;)Z
move-result v1
if-eqz v1, :cond_37
:cond_33
move-object v1, v5
:cond_34
add-int/lit8 v2, v2, 0x1
goto :goto_14
:cond_37
if-eqz v4, :cond_5e
.line 9
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {v4}, Ljava/lang/StackTraceElement;->getClassName()Ljava/lang/String;
move-result-object v1
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v1, "."
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v4}, Ljava/lang/StackTraceElement;->getMethodName()Ljava/lang/String;
move-result-object v1
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
invoke-virtual {v4}, Ljava/lang/StackTraceElement;->getLineNumber()I
move-result v1
const/4 v2, 0x0
invoke-virtual {p0, v0, v1, v2}, Lorg/apache/commons/jexl3/JexlEngine;->createInfo(Ljava/lang/String;II)Lorg/apache/commons/jexl3/JexlInfo;
move-result-object v3
:cond_5e
return-object v3
.end method
.method public createInfo(Ljava/lang/String;II)Lorg/apache/commons/jexl3/JexlInfo;
.registers 5
.line 1
new-instance v0, Lorg/apache/commons/jexl3/JexlInfo;
invoke-direct {v0, p1, p2, p3}, Lorg/apache/commons/jexl3/JexlInfo;-><init>(Ljava/lang/String;II)V
return-object v0
.end method
.method public createJxltEngine()Lorg/apache/commons/jexl3/JxltEngine;
.registers 2
const/4 v0, 0x1
.line 1
invoke-virtual {p0, v0}, Lorg/apache/commons/jexl3/JexlEngine;->createJxltEngine(Z)Lorg/apache/commons/jexl3/JxltEngine;
move-result-object v0
return-object v0
.end method
.method public createJxltEngine(Z)Lorg/apache/commons/jexl3/JxltEngine;
.registers 5
const/16 v0, 0x100
const/16 v1, 0x24
const/16 v2, 0x23
.line 2
invoke-virtual {p0, p1, v0, v1, v2}, Lorg/apache/commons/jexl3/JexlEngine;->createJxltEngine(ZICC)Lorg/apache/commons/jexl3/JxltEngine;
move-result-object p1
return-object p1
.end method
.method public abstract createJxltEngine(ZICC)Lorg/apache/commons/jexl3/JxltEngine;
.end method
.method public final createScript(Ljava/io/File;)Lorg/apache/commons/jexl3/JexlScript;
.registers 3
.line 3
invoke-virtual {p0, p1}, Lorg/apache/commons/jexl3/JexlEngine;->readSource(Ljava/io/File;)Ljava/lang/String;
move-result-object p1
const/4 v0, 0x0
invoke-virtual {p0, v0, p1, v0}, Lorg/apache/commons/jexl3/JexlEngine;->createScript(Lorg/apache/commons/jexl3/JexlInfo;Ljava/lang/String;[Ljava/lang/String;)Lorg/apache/commons/jexl3/JexlScript;
move-result-object p1
return-object p1
.end method
.method public final varargs createScript(Ljava/io/File;[Ljava/lang/String;)Lorg/apache/commons/jexl3/JexlScript;
.registers 4
.line 4
invoke-virtual {p0, p1}, Lorg/apache/commons/jexl3/JexlEngine;->readSource(Ljava/io/File;)Ljava/lang/String;
move-result-object p1
const/4 v0, 0x0
invoke-virtual {p0, v0, p1, p2}, Lorg/apache/commons/jexl3/JexlEngine;->createScript(Lorg/apache/commons/jexl3/JexlInfo;Ljava/lang/String;[Ljava/lang/String;)Lorg/apache/commons/jexl3/JexlScript;
move-result-object p1
return-object p1
.end method
.method public final createScript(Ljava/lang/String;)Lorg/apache/commons/jexl3/JexlScript;
.registers 3
const/4 v0, 0x0
.line 1
invoke-virtual {p0, v0, p1, v0}, Lorg/apache/commons/jexl3/JexlEngine;->createScript(Lorg/apache/commons/jexl3/JexlInfo;Ljava/lang/String;[Ljava/lang/String;)Lorg/apache/commons/jexl3/JexlScript;
move-result-object p1
return-object p1
.end method
.method public final varargs createScript(Ljava/lang/String;[Ljava/lang/String;)Lorg/apache/commons/jexl3/JexlScript;
.registers 4
const/4 v0, 0x0
.line 2
invoke-virtual {p0, v0, p1, p2}, Lorg/apache/commons/jexl3/JexlEngine;->createScript(Lorg/apache/commons/jexl3/JexlInfo;Ljava/lang/String;[Ljava/lang/String;)Lorg/apache/commons/jexl3/JexlScript;
move-result-object p1
return-object p1
.end method
.method public final createScript(Ljava/net/URL;)Lorg/apache/commons/jexl3/JexlScript;
.registers 3
.line 6
invoke-virtual {p0, p1}, Lorg/apache/commons/jexl3/JexlEngine;->readSource(Ljava/net/URL;)Ljava/lang/String;
move-result-object p1
const/4 v0, 0x0
invoke-virtual {p0, v0, p1, v0}, Lorg/apache/commons/jexl3/JexlEngine;->createScript(Lorg/apache/commons/jexl3/JexlInfo;Ljava/lang/String;[Ljava/lang/String;)Lorg/apache/commons/jexl3/JexlScript;
move-result-object p1
return-object p1
.end method
.method public final createScript(Ljava/net/URL;[Ljava/lang/String;)Lorg/apache/commons/jexl3/JexlScript;
.registers 4
.line 7
invoke-virtual {p0, p1}, Lorg/apache/commons/jexl3/JexlEngine;->readSource(Ljava/net/URL;)Ljava/lang/String;
move-result-object p1
const/4 v0, 0x0
invoke-virtual {p0, v0, p1, p2}, Lorg/apache/commons/jexl3/JexlEngine;->createScript(Lorg/apache/commons/jexl3/JexlInfo;Ljava/lang/String;[Ljava/lang/String;)Lorg/apache/commons/jexl3/JexlScript;
move-result-object p1
return-object p1
.end method
.method public final createScript(Lorg/apache/commons/jexl3/JexlInfo;Ljava/io/File;[Ljava/lang/String;)Lorg/apache/commons/jexl3/JexlScript;
.registers 4
.line 5
invoke-virtual {p0, p2}, Lorg/apache/commons/jexl3/JexlEngine;->readSource(Ljava/io/File;)Ljava/lang/String;
move-result-object p2
invoke-virtual {p0, p1, p2, p3}, Lorg/apache/commons/jexl3/JexlEngine;->createScript(Lorg/apache/commons/jexl3/JexlInfo;Ljava/lang/String;[Ljava/lang/String;)Lorg/apache/commons/jexl3/JexlScript;
move-result-object p1
return-object p1
.end method
.method public abstract createScript(Lorg/apache/commons/jexl3/JexlInfo;Ljava/lang/String;[Ljava/lang/String;)Lorg/apache/commons/jexl3/JexlScript;
.end method
.method public final createScript(Lorg/apache/commons/jexl3/JexlInfo;Ljava/net/URL;[Ljava/lang/String;)Lorg/apache/commons/jexl3/JexlScript;
.registers 4
.line 8
invoke-virtual {p0, p2}, Lorg/apache/commons/jexl3/JexlEngine;->readSource(Ljava/net/URL;)Ljava/lang/String;
move-result-object p2
invoke-virtual {p0, p1, p2, p3}, Lorg/apache/commons/jexl3/JexlEngine;->createScript(Lorg/apache/commons/jexl3/JexlInfo;Ljava/lang/String;[Ljava/lang/String;)Lorg/apache/commons/jexl3/JexlScript;
move-result-object p1
return-object p1
.end method
.method public abstract getArithmetic()Lorg/apache/commons/jexl3/JexlArithmetic;
.end method
.method public abstract getCharset()Ljava/nio/charset/Charset;
.end method
.method public abstract getProperty(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
.end method
.method public abstract getProperty(Lorg/apache/commons/jexl3/JexlContext;Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
.end method
.method public abstract getUberspect()Lorg/apache/commons/jexl3/introspection/JexlUberspect;
.end method
.method public varargs abstract invokeMethod(Ljava/lang/Object;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/Object;
.end method
.method public abstract isCancellable()Z
.end method
.method public abstract isDebug()Z
.end method
.method public abstract isSilent()Z
.end method
.method public abstract isStrict()Z
.end method
.method public varargs abstract newInstance(Ljava/lang/Class;[Ljava/lang/Object;)Ljava/lang/Object;
.annotation system Ldalvik/annotation/Signature;
value = {
"<T:",
"Ljava/lang/Object;",
">(",
"Ljava/lang/Class<",
"+TT;>;[",
"Ljava/lang/Object;",
")TT;"
}
.end annotation
.end method
.method public varargs abstract newInstance(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/Object;
.end method
.method public readSource(Ljava/io/File;)Ljava/lang/String;
.registers 8
const-string v0, "source file is null"
.line 1
invoke-static {p1, v0}, Ljava/util/Objects;->requireNonNull(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
const/4 v0, 0x0
.line 2
:try_start_6
new-instance v1, Ljava/io/BufferedReader;
new-instance v2, Ljava/io/InputStreamReader;
new-instance v3, Ljava/io/FileInputStream;
invoke-direct {v3, p1}, Ljava/io/FileInputStream;-><init>(Ljava/io/File;)V
invoke-virtual {p0}, Lorg/apache/commons/jexl3/JexlEngine;->getCharset()Ljava/nio/charset/Charset;
move-result-object v4
invoke-direct {v2, v3, v4}, Ljava/io/InputStreamReader;-><init>(Ljava/io/InputStream;Ljava/nio/charset/Charset;)V
invoke-direct {v1, v2}, Ljava/io/BufferedReader;-><init>(Ljava/io/Reader;)V
:try_end_19
.catch Ljava/io/IOException; {:try_start_6 .. :try_end_19} :catch_25
.catchall {:try_start_6 .. :try_end_19} :catchall_23
.line 3
:try_start_19
invoke-static {v1}, Lorg/apache/commons/jexl3/JexlEngine;->toString(Ljava/io/BufferedReader;)Ljava/lang/String;
move-result-object p1
:try_end_1d
.catch Ljava/io/IOException; {:try_start_19 .. :try_end_1d} :catch_21
.catchall {:try_start_19 .. :try_end_1d} :catchall_3a
.line 4
:try_start_1d
invoke-virtual {v1}, Ljava/io/BufferedReader;->close()V
:try_end_20
.catch Ljava/io/IOException; {:try_start_1d .. :try_end_20} :catch_20
:catch_20
return-object p1
:catch_21
move-exception v0
goto :goto_29
:catchall_23
move-exception p1
goto :goto_3c
:catch_25
move-exception v1
move-object v5, v1
move-object v1, v0
move-object v0, v5
.line 5
:goto_29
:try_start_29
new-instance v2, Lorg/apache/commons/jexl3/JexlException;
invoke-virtual {p1}, Ljava/io/File;->toString()Ljava/lang/String;
move-result-object p1
const/4 v3, 0x1
invoke-virtual {p0, p1, v3, v3}, Lorg/apache/commons/jexl3/JexlEngine;->createInfo(Ljava/lang/String;II)Lorg/apache/commons/jexl3/JexlInfo;
move-result-object p1
const-string v3, "could not read source File"
invoke-direct {v2, p1, v3, v0}, Lorg/apache/commons/jexl3/JexlException;-><init>(Lorg/apache/commons/jexl3/JexlInfo;Ljava/lang/String;Ljava/lang/Throwable;)V
throw v2
:try_end_3a
.catchall {:try_start_29 .. :try_end_3a} :catchall_3a
:catchall_3a
move-exception p1
move-object v0, v1
:goto_3c
if-eqz v0, :cond_41
.line 6
:try_start_3e
invoke-virtual {v0}, Ljava/io/BufferedReader;->close()V
:try_end_41
.catch Ljava/io/IOException; {:try_start_3e .. :try_end_41} :catch_41
.line 7
:catch_41
:cond_41
throw p1
.end method
.method public readSource(Ljava/net/URL;)Ljava/lang/String;
.registers 8
const-string v0, "source URL is null"
.line 8
invoke-static {p1, v0}, Ljava/util/Objects;->requireNonNull(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
const/4 v0, 0x0
.line 9
:try_start_6
new-instance v1, Ljava/io/BufferedReader;
new-instance v2, Ljava/io/InputStreamReader;
invoke-static {p1}, Lcom/google/firebase/perf/network/FirebasePerfUrlConnection;->openStream(Ljava/net/URL;)Ljava/io/InputStream;
move-result-object v3
invoke-virtual {p0}, Lorg/apache/commons/jexl3/JexlEngine;->getCharset()Ljava/nio/charset/Charset;
move-result-object v4
invoke-direct {v2, v3, v4}, Ljava/io/InputStreamReader;-><init>(Ljava/io/InputStream;Ljava/nio/charset/Charset;)V
invoke-direct {v1, v2}, Ljava/io/BufferedReader;-><init>(Ljava/io/Reader;)V
:try_end_18
.catch Ljava/io/IOException; {:try_start_6 .. :try_end_18} :catch_24
.catchall {:try_start_6 .. :try_end_18} :catchall_22
.line 10
:try_start_18
invoke-static {v1}, Lorg/apache/commons/jexl3/JexlEngine;->toString(Ljava/io/BufferedReader;)Ljava/lang/String;
move-result-object p1
:try_end_1c
.catch Ljava/io/IOException; {:try_start_18 .. :try_end_1c} :catch_20
.catchall {:try_start_18 .. :try_end_1c} :catchall_39
.line 11
:try_start_1c
invoke-virtual {v1}, Ljava/io/BufferedReader;->close()V
:try_end_1f
.catch Ljava/io/IOException; {:try_start_1c .. :try_end_1f} :catch_1f
:catch_1f
return-object p1
:catch_20
move-exception v0
goto :goto_28
:catchall_22
move-exception p1
goto :goto_3b
:catch_24
move-exception v1
move-object v5, v1
move-object v1, v0
move-object v0, v5
.line 12
:goto_28
:try_start_28
new-instance v2, Lorg/apache/commons/jexl3/JexlException;
invoke-virtual {p1}, Ljava/net/URL;->toString()Ljava/lang/String;
move-result-object p1
const/4 v3, 0x1
invoke-virtual {p0, p1, v3, v3}, Lorg/apache/commons/jexl3/JexlEngine;->createInfo(Ljava/lang/String;II)Lorg/apache/commons/jexl3/JexlInfo;
move-result-object p1
const-string v3, "could not read source URL"
invoke-direct {v2, p1, v3, v0}, Lorg/apache/commons/jexl3/JexlException;-><init>(Lorg/apache/commons/jexl3/JexlInfo;Ljava/lang/String;Ljava/lang/Throwable;)V
throw v2
:try_end_39
.catchall {:try_start_28 .. :try_end_39} :catchall_39
:catchall_39
move-exception p1
move-object v0, v1
:goto_3b
if-eqz v0, :cond_40
.line 13
:try_start_3d
invoke-virtual {v0}, Ljava/io/BufferedReader;->close()V
:try_end_40
.catch Ljava/io/IOException; {:try_start_3d .. :try_end_40} :catch_40
.line 14
:catch_40
:cond_40
throw p1
.end method
.method public abstract setClassLoader(Ljava/lang/ClassLoader;)V
.end method
.method public abstract setProperty(Ljava/lang/Object;Ljava/lang/String;Ljava/lang/Object;)V
.end method
.method public abstract setProperty(Lorg/apache/commons/jexl3/JexlContext;Ljava/lang/Object;Ljava/lang/String;Ljava/lang/Object;)V
.end method