[android] getting a constant layer filter fix
This commit is contained in:
committed by
Łukasz Paczos
parent
d0520d02f1
commit
e08e143c12
@@ -4485,7 +4485,7 @@ public class Expression {
|
||||
* @param jsonElement the json element to convert
|
||||
* @return the expression
|
||||
*/
|
||||
private static Expression convert(@NonNull JsonElement jsonElement) {
|
||||
public static Expression convert(@NonNull JsonElement jsonElement) {
|
||||
if (jsonElement instanceof JsonArray) {
|
||||
return convert((JsonArray) jsonElement);
|
||||
} else if (jsonElement instanceof JsonPrimitive) {
|
||||
|
||||
@@ -11,6 +11,7 @@ import android.support.annotation.UiThread;
|
||||
import static com.mapbox.mapboxsdk.utils.ColorUtils.rgbaToColor;
|
||||
|
||||
import com.google.gson.JsonArray;
|
||||
import com.google.gson.JsonElement;
|
||||
import com.mapbox.mapboxsdk.style.expressions.Expression;
|
||||
import com.mapbox.mapboxsdk.style.layers.TransitionOptions;
|
||||
|
||||
|
||||
@@ -11,6 +11,7 @@ import android.support.annotation.UiThread;
|
||||
import static com.mapbox.mapboxsdk.utils.ColorUtils.rgbaToColor;
|
||||
|
||||
import com.google.gson.JsonArray;
|
||||
import com.google.gson.JsonElement;
|
||||
import com.mapbox.mapboxsdk.style.expressions.Expression;
|
||||
import com.mapbox.mapboxsdk.style.layers.TransitionOptions;
|
||||
|
||||
@@ -120,12 +121,12 @@ public class CircleLayer extends Layer {
|
||||
@Nullable
|
||||
public Expression getFilter() {
|
||||
checkThread();
|
||||
Expression expression = null;
|
||||
JsonArray array = (JsonArray) nativeGetFilter();
|
||||
if (array != null) {
|
||||
expression = Expression.Converter.convert(array);
|
||||
JsonElement jsonElement = nativeGetFilter();
|
||||
if (jsonElement != null) {
|
||||
return Expression.Converter.convert(jsonElement);
|
||||
} else {
|
||||
return null;
|
||||
}
|
||||
return expression;
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -11,6 +11,7 @@ import android.support.annotation.UiThread;
|
||||
import static com.mapbox.mapboxsdk.utils.ColorUtils.rgbaToColor;
|
||||
|
||||
import com.google.gson.JsonArray;
|
||||
import com.google.gson.JsonElement;
|
||||
import com.mapbox.mapboxsdk.style.expressions.Expression;
|
||||
import com.mapbox.mapboxsdk.style.layers.TransitionOptions;
|
||||
|
||||
@@ -120,12 +121,12 @@ public class FillExtrusionLayer extends Layer {
|
||||
@Nullable
|
||||
public Expression getFilter() {
|
||||
checkThread();
|
||||
Expression expression = null;
|
||||
JsonArray array = (JsonArray) nativeGetFilter();
|
||||
if (array != null) {
|
||||
expression = Expression.Converter.convert(array);
|
||||
JsonElement jsonElement = nativeGetFilter();
|
||||
if (jsonElement != null) {
|
||||
return Expression.Converter.convert(jsonElement);
|
||||
} else {
|
||||
return null;
|
||||
}
|
||||
return expression;
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -11,6 +11,7 @@ import android.support.annotation.UiThread;
|
||||
import static com.mapbox.mapboxsdk.utils.ColorUtils.rgbaToColor;
|
||||
|
||||
import com.google.gson.JsonArray;
|
||||
import com.google.gson.JsonElement;
|
||||
import com.mapbox.mapboxsdk.style.expressions.Expression;
|
||||
import com.mapbox.mapboxsdk.style.layers.TransitionOptions;
|
||||
|
||||
@@ -120,12 +121,12 @@ public class FillLayer extends Layer {
|
||||
@Nullable
|
||||
public Expression getFilter() {
|
||||
checkThread();
|
||||
Expression expression = null;
|
||||
JsonArray array = (JsonArray) nativeGetFilter();
|
||||
if (array != null) {
|
||||
expression = Expression.Converter.convert(array);
|
||||
JsonElement jsonElement = nativeGetFilter();
|
||||
if (jsonElement != null) {
|
||||
return Expression.Converter.convert(jsonElement);
|
||||
} else {
|
||||
return null;
|
||||
}
|
||||
return expression;
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -11,6 +11,7 @@ import android.support.annotation.UiThread;
|
||||
import static com.mapbox.mapboxsdk.utils.ColorUtils.rgbaToColor;
|
||||
|
||||
import com.google.gson.JsonArray;
|
||||
import com.google.gson.JsonElement;
|
||||
import com.mapbox.mapboxsdk.style.expressions.Expression;
|
||||
import com.mapbox.mapboxsdk.style.layers.TransitionOptions;
|
||||
|
||||
@@ -120,12 +121,12 @@ public class HeatmapLayer extends Layer {
|
||||
@Nullable
|
||||
public Expression getFilter() {
|
||||
checkThread();
|
||||
Expression expression = null;
|
||||
JsonArray array = (JsonArray) nativeGetFilter();
|
||||
if (array != null) {
|
||||
expression = Expression.Converter.convert(array);
|
||||
JsonElement jsonElement = nativeGetFilter();
|
||||
if (jsonElement != null) {
|
||||
return Expression.Converter.convert(jsonElement);
|
||||
} else {
|
||||
return null;
|
||||
}
|
||||
return expression;
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -11,6 +11,7 @@ import android.support.annotation.UiThread;
|
||||
import static com.mapbox.mapboxsdk.utils.ColorUtils.rgbaToColor;
|
||||
|
||||
import com.google.gson.JsonArray;
|
||||
import com.google.gson.JsonElement;
|
||||
import com.mapbox.mapboxsdk.style.expressions.Expression;
|
||||
import com.mapbox.mapboxsdk.style.layers.TransitionOptions;
|
||||
|
||||
|
||||
@@ -104,7 +104,7 @@ public abstract class Layer {
|
||||
@Keep
|
||||
protected native void nativeSetFilter(Object[] filter);
|
||||
|
||||
@NonNull
|
||||
@Nullable
|
||||
@Keep
|
||||
protected native JsonElement nativeGetFilter();
|
||||
|
||||
|
||||
@@ -11,6 +11,7 @@ import android.support.annotation.UiThread;
|
||||
import static com.mapbox.mapboxsdk.utils.ColorUtils.rgbaToColor;
|
||||
|
||||
import com.google.gson.JsonArray;
|
||||
import com.google.gson.JsonElement;
|
||||
import com.mapbox.mapboxsdk.style.expressions.Expression;
|
||||
import com.mapbox.mapboxsdk.style.layers.TransitionOptions;
|
||||
|
||||
@@ -120,12 +121,12 @@ public class LineLayer extends Layer {
|
||||
@Nullable
|
||||
public Expression getFilter() {
|
||||
checkThread();
|
||||
Expression expression = null;
|
||||
JsonArray array = (JsonArray) nativeGetFilter();
|
||||
if (array != null) {
|
||||
expression = Expression.Converter.convert(array);
|
||||
JsonElement jsonElement = nativeGetFilter();
|
||||
if (jsonElement != null) {
|
||||
return Expression.Converter.convert(jsonElement);
|
||||
} else {
|
||||
return null;
|
||||
}
|
||||
return expression;
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -11,6 +11,7 @@ import android.support.annotation.UiThread;
|
||||
import static com.mapbox.mapboxsdk.utils.ColorUtils.rgbaToColor;
|
||||
|
||||
import com.google.gson.JsonArray;
|
||||
import com.google.gson.JsonElement;
|
||||
import com.mapbox.mapboxsdk.style.expressions.Expression;
|
||||
import com.mapbox.mapboxsdk.style.layers.TransitionOptions;
|
||||
|
||||
|
||||
@@ -11,6 +11,7 @@ import android.support.annotation.UiThread;
|
||||
import static com.mapbox.mapboxsdk.utils.ColorUtils.rgbaToColor;
|
||||
|
||||
import com.google.gson.JsonArray;
|
||||
import com.google.gson.JsonElement;
|
||||
import com.mapbox.mapboxsdk.style.expressions.Expression;
|
||||
import com.mapbox.mapboxsdk.style.layers.TransitionOptions;
|
||||
import com.mapbox.mapboxsdk.style.types.Formatted;
|
||||
@@ -122,12 +123,12 @@ public class SymbolLayer extends Layer {
|
||||
@Nullable
|
||||
public Expression getFilter() {
|
||||
checkThread();
|
||||
Expression expression = null;
|
||||
JsonArray array = (JsonArray) nativeGetFilter();
|
||||
if (array != null) {
|
||||
expression = Expression.Converter.convert(array);
|
||||
JsonElement jsonElement = nativeGetFilter();
|
||||
if (jsonElement != null) {
|
||||
return Expression.Converter.convert(jsonElement);
|
||||
} else {
|
||||
return null;
|
||||
}
|
||||
return expression;
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -16,6 +16,7 @@ import android.support.annotation.UiThread;
|
||||
import static com.mapbox.mapboxsdk.utils.ColorUtils.rgbaToColor;
|
||||
|
||||
import com.google.gson.JsonArray;
|
||||
import com.google.gson.JsonElement;
|
||||
import com.mapbox.mapboxsdk.style.expressions.Expression;
|
||||
import com.mapbox.mapboxsdk.style.layers.TransitionOptions;
|
||||
<% if (type === 'symbol') { -%>
|
||||
@@ -148,12 +149,12 @@ public class <%- camelize(type) %>Layer extends Layer {
|
||||
@Nullable
|
||||
public Expression getFilter() {
|
||||
checkThread();
|
||||
Expression expression = null;
|
||||
JsonArray array = (JsonArray) nativeGetFilter();
|
||||
if (array != null) {
|
||||
expression = Expression.Converter.convert(array);
|
||||
JsonElement jsonElement = nativeGetFilter();
|
||||
if (jsonElement != null) {
|
||||
return Expression.Converter.convert(jsonElement);
|
||||
} else {
|
||||
return null;
|
||||
}
|
||||
return expression;
|
||||
}
|
||||
|
||||
<% } -%>
|
||||
|
||||
Reference in New Issue
Block a user