JexlScriptEngine$JexlContextWrapper.smali

.class final Lorg/apache/commons/jexl3/scripting/JexlScriptEngine$JexlContextWrapper;
.super Ljava/lang/Object;
.source "SourceFile"

# interfaces
.implements Lorg/apache/commons/jexl3/JexlContext;


# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
    value = Lorg/apache/commons/jexl3/scripting/JexlScriptEngine;
.end annotation

.annotation system Ldalvik/annotation/InnerClass;
    accessFlags = 0x11
    name = "JexlContextWrapper"
.end annotation


# instance fields
.field private final scriptContext:Ljavax/script/ScriptContext;

.field public final synthetic this$0:Lorg/apache/commons/jexl3/scripting/JexlScriptEngine;


# direct methods
.method private constructor <init>(Lorg/apache/commons/jexl3/scripting/JexlScriptEngine;Ljavax/script/ScriptContext;)V
    .registers 3

    .line 2
    iput-object p1, p0, Lorg/apache/commons/jexl3/scripting/JexlScriptEngine$JexlContextWrapper;->this$0:Lorg/apache/commons/jexl3/scripting/JexlScriptEngine;

    invoke-direct {p0}, Ljava/lang/Object;-><init>()V

    .line 3
    iput-object p2, p0, Lorg/apache/commons/jexl3/scripting/JexlScriptEngine$JexlContextWrapper;->scriptContext:Ljavax/script/ScriptContext;

    return-void
.end method

.method public synthetic constructor <init>(Lorg/apache/commons/jexl3/scripting/JexlScriptEngine;Ljavax/script/ScriptContext;Lorg/apache/commons/jexl3/scripting/JexlScriptEngine$1;)V
    .registers 4

    .line 1
    invoke-direct {p0, p1, p2}, Lorg/apache/commons/jexl3/scripting/JexlScriptEngine$JexlContextWrapper;-><init>(Lorg/apache/commons/jexl3/scripting/JexlScriptEngine;Ljavax/script/ScriptContext;)V

    return-void
.end method


# virtual methods
.method public get(Ljava/lang/String;)Ljava/lang/Object;
    .registers 4

    .line 1
    iget-object v0, p0, Lorg/apache/commons/jexl3/scripting/JexlScriptEngine$JexlContextWrapper;->scriptContext:Ljavax/script/ScriptContext;

    invoke-interface {v0, p1}, Ljavax/script/ScriptContext;->getAttribute(Ljava/lang/String;)Ljava/lang/Object;

    move-result-object v0

    const-string v1, "JEXL"

    .line 2
    invoke-virtual {v1, p1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

    move-result p1

    if-eqz p1, :cond_20

    if-eqz v0, :cond_19

    .line 3
    # getter for: Lorg/apache/commons/jexl3/scripting/JexlScriptEngine;->LOG:Lorg/apache/commons/logging/Log;
    invoke-static {}, Lorg/apache/commons/jexl3/scripting/JexlScriptEngine;->access$500()Lorg/apache/commons/logging/Log;

    move-result-object p1

    const-string v0, "JEXL is a reserved variable name, user defined value is ignored"

    invoke-interface {p1, v0}, Lorg/apache/commons/logging/Log;->warn(Ljava/lang/Object;)V

    .line 4
    :cond_19
    iget-object p1, p0, Lorg/apache/commons/jexl3/scripting/JexlScriptEngine$JexlContextWrapper;->this$0:Lorg/apache/commons/jexl3/scripting/JexlScriptEngine;

    # getter for: Lorg/apache/commons/jexl3/scripting/JexlScriptEngine;->jexlObject:Lorg/apache/commons/jexl3/scripting/JexlScriptEngine$JexlScriptObject;
    invoke-static {p1}, Lorg/apache/commons/jexl3/scripting/JexlScriptEngine;->access$900(Lorg/apache/commons/jexl3/scripting/JexlScriptEngine;)Lorg/apache/commons/jexl3/scripting/JexlScriptEngine$JexlScriptObject;

    move-result-object p1

    return-object p1

    :cond_20
    return-object v0
.end method

.method public has(Ljava/lang/String;)Z
    .registers 4

    .line 1
    iget-object v0, p0, Lorg/apache/commons/jexl3/scripting/JexlScriptEngine$JexlContextWrapper;->scriptContext:Ljavax/script/ScriptContext;

    const/16 v1, 0x64

    invoke-interface {v0, v1}, Ljavax/script/ScriptContext;->getBindings(I)Ljavax/script/Bindings;

    move-result-object v0

    .line 2
    invoke-interface {v0, p1}, Ljavax/script/Bindings;->containsKey(Ljava/lang/Object;)Z

    move-result p1

    return p1
.end method

.method public set(Ljava/lang/String;Ljava/lang/Object;)V
    .registers 5

    .line 1
    iget-object v0, p0, Lorg/apache/commons/jexl3/scripting/JexlScriptEngine$JexlContextWrapper;->scriptContext:Ljavax/script/ScriptContext;

    invoke-interface {v0, p1}, Ljavax/script/ScriptContext;->getAttributesScope(Ljava/lang/String;)I

    move-result v0

    const/4 v1, -0x1

    if-ne v0, v1, :cond_b

    const/16 v0, 0x64

    .line 2
    :cond_b
    iget-object v1, p0, Lorg/apache/commons/jexl3/scripting/JexlScriptEngine$JexlContextWrapper;->scriptContext:Ljavax/script/ScriptContext;

    invoke-interface {v1, v0}, Ljavax/script/ScriptContext;->getBindings(I)Ljavax/script/Bindings;

    move-result-object v0

    invoke-interface {v0, p1, p2}, Ljavax/script/Bindings;->put(Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object;

    return-void
.end method