commit
35ab9a5ddb
399
json-path-2.1.0-JsonOrg.patch
Normal file
399
json-path-2.1.0-JsonOrg.patch
Normal file
@ -0,0 +1,399 @@
|
|||||||
|
diff -Nru JsonPath-json-path-2.1.0/json-path/src/main/java/com/jayway/jsonpath/spi/json/JsonOrgJsonProvider.java JsonPath-json-path-2.1.0.json.org/json-path/src/main/java/com/jayway/jsonpath/spi/json/JsonOrgJsonProvider.java
|
||||||
|
--- JsonPath-json-path-2.1.0/json-path/src/main/java/com/jayway/jsonpath/spi/json/JsonOrgJsonProvider.java 2015-11-22 16:21:23.000000000 +0100
|
||||||
|
+++ JsonPath-json-path-2.1.0.json.org/json-path/src/main/java/com/jayway/jsonpath/spi/json/JsonOrgJsonProvider.java 1970-01-01 01:00:00.000000000 +0100
|
||||||
|
@@ -1,220 +0,0 @@
|
||||||
|
-package com.jayway.jsonpath.spi.json;
|
||||||
|
-
|
||||||
|
-import com.google.gson.JsonObject;
|
||||||
|
-import com.jayway.jsonpath.InvalidJsonException;
|
||||||
|
-import com.jayway.jsonpath.JsonPathException;
|
||||||
|
-import org.json.JSONArray;
|
||||||
|
-import org.json.JSONException;
|
||||||
|
-import org.json.JSONObject;
|
||||||
|
-import org.json.JSONTokener;
|
||||||
|
-import org.slf4j.Logger;
|
||||||
|
-import org.slf4j.LoggerFactory;
|
||||||
|
-
|
||||||
|
-import java.io.InputStream;
|
||||||
|
-import java.io.InputStreamReader;
|
||||||
|
-import java.io.UnsupportedEncodingException;
|
||||||
|
-import java.util.ArrayList;
|
||||||
|
-import java.util.Collection;
|
||||||
|
-import java.util.List;
|
||||||
|
-
|
||||||
|
-public class JsonOrgJsonProvider extends AbstractJsonProvider {
|
||||||
|
-
|
||||||
|
- private static final Logger logger = LoggerFactory.getLogger(GsonJsonProvider.class);
|
||||||
|
-
|
||||||
|
- @Override
|
||||||
|
- public Object parse(String json) throws InvalidJsonException {
|
||||||
|
- try {
|
||||||
|
- return new JSONTokener(json).nextValue();
|
||||||
|
- } catch (JSONException e) {
|
||||||
|
- throw new InvalidJsonException(e);
|
||||||
|
- }
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- @Override
|
||||||
|
- public Object parse(InputStream jsonStream, String charset) throws InvalidJsonException {
|
||||||
|
-
|
||||||
|
- try {
|
||||||
|
- return new JSONTokener(new InputStreamReader(jsonStream, charset)).nextValue();
|
||||||
|
- } catch (UnsupportedEncodingException e) {
|
||||||
|
- throw new JsonPathException(e);
|
||||||
|
- } catch (JSONException e) {
|
||||||
|
- throw new InvalidJsonException(e);
|
||||||
|
- }
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- @Override
|
||||||
|
- public Object unwrap(Object obj) {
|
||||||
|
- if(obj == JSONObject.NULL){
|
||||||
|
- return null;
|
||||||
|
- }
|
||||||
|
- return obj;
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- @Override
|
||||||
|
- public String toJson(Object obj) {
|
||||||
|
- return obj.toString();
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- @Override
|
||||||
|
- public Object createArray() {
|
||||||
|
- return new JSONArray();
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- @Override
|
||||||
|
- public Object createMap() {
|
||||||
|
- return new JsonObject();
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- @Override
|
||||||
|
- public boolean isArray(Object obj) {
|
||||||
|
- return (obj instanceof JSONArray || obj instanceof List);
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- @Override
|
||||||
|
- public Object getArrayIndex(Object obj, int idx) {
|
||||||
|
- try {
|
||||||
|
- return toJsonArray(obj).get(idx);
|
||||||
|
- } catch (JSONException e) {
|
||||||
|
- throw new JsonPathException(e);
|
||||||
|
- }
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- @Override
|
||||||
|
- public void setArrayIndex(Object array, int index, Object newValue) {
|
||||||
|
- try {
|
||||||
|
- if (!isArray(array)) {
|
||||||
|
- throw new UnsupportedOperationException();
|
||||||
|
- } else {
|
||||||
|
- toJsonArray(array).put(index, createJsonElement(newValue));
|
||||||
|
- }
|
||||||
|
- } catch (JSONException e) {
|
||||||
|
- throw new JsonPathException(e);
|
||||||
|
- }
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- @Override
|
||||||
|
- public Object getMapValue(Object obj, String key) {
|
||||||
|
- try {
|
||||||
|
- JSONObject jsonObject = toJsonObject(obj);
|
||||||
|
- Object o = jsonObject.get(key);
|
||||||
|
- if (!jsonObject.has(key)) {
|
||||||
|
- return UNDEFINED;
|
||||||
|
- } else {
|
||||||
|
- return unwrap(o);
|
||||||
|
- }
|
||||||
|
- } catch (JSONException e) {
|
||||||
|
- throw new JsonPathException(e);
|
||||||
|
- }
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- @Override
|
||||||
|
- public void setProperty(Object obj, Object key, Object value) {
|
||||||
|
- try {
|
||||||
|
- if (isMap(obj))
|
||||||
|
- toJsonObject(obj).put(key.toString(), createJsonElement(value));
|
||||||
|
- else {
|
||||||
|
- JSONArray array = toJsonArray(obj);
|
||||||
|
- int index;
|
||||||
|
- if (key != null) {
|
||||||
|
- index = key instanceof Integer ? (Integer) key : Integer.parseInt(key.toString());
|
||||||
|
- } else {
|
||||||
|
- index = array.length();
|
||||||
|
- }
|
||||||
|
- if (index == array.length()) {
|
||||||
|
- array.put(createJsonElement(value));
|
||||||
|
- } else {
|
||||||
|
- array.put(index, createJsonElement(value));
|
||||||
|
- }
|
||||||
|
- }
|
||||||
|
- } catch (JSONException e) {
|
||||||
|
- throw new JsonPathException(e);
|
||||||
|
- }
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- @SuppressWarnings("unchecked")
|
||||||
|
- public void removeProperty(Object obj, Object key) {
|
||||||
|
- if (isMap(obj))
|
||||||
|
- toJsonObject(obj).remove(key.toString());
|
||||||
|
- else {
|
||||||
|
- JSONArray array = toJsonArray(obj);
|
||||||
|
- int index = key instanceof Integer ? (Integer) key : Integer.parseInt(key.toString());
|
||||||
|
- array.remove(index);
|
||||||
|
- }
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- @Override
|
||||||
|
- public boolean isMap(Object obj) {
|
||||||
|
- return (obj instanceof JSONObject);
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- @Override
|
||||||
|
- public Collection<String> getPropertyKeys(Object obj) {
|
||||||
|
- JSONObject jsonObject = toJsonObject(obj);
|
||||||
|
- List<String> keys = new ArrayList<String>();
|
||||||
|
- try {
|
||||||
|
- for (int i = 0; i < jsonObject.names().length(); i++) {
|
||||||
|
- String key = (String) jsonObject.names().get(i);
|
||||||
|
- keys.add(key);
|
||||||
|
-
|
||||||
|
- }
|
||||||
|
- return keys;
|
||||||
|
- } catch (JSONException e) {
|
||||||
|
- throw new JsonPathException(e);
|
||||||
|
- }
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- @Override
|
||||||
|
- public int length(Object obj) {
|
||||||
|
- if (isArray(obj)) {
|
||||||
|
- return toJsonArray(obj).length();
|
||||||
|
- } else if (isMap(obj)) {
|
||||||
|
- return toJsonObject(obj).length();
|
||||||
|
- } else {
|
||||||
|
- if (obj instanceof String) {
|
||||||
|
- return ((String) obj).length();
|
||||||
|
- }
|
||||||
|
- }
|
||||||
|
- throw new JsonPathException("length operation can not applied to " + obj != null ? obj.getClass().getName() : "null");
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- @Override
|
||||||
|
- public Iterable<?> toIterable(Object obj) {
|
||||||
|
- try {
|
||||||
|
- if (isArray(obj)) {
|
||||||
|
- JSONArray arr = toJsonArray(obj);
|
||||||
|
- List<Object> values = new ArrayList<Object>(arr.length());
|
||||||
|
- for (int i = 0; i < arr.length(); i++) {
|
||||||
|
- values.add(unwrap(arr.get(i)));
|
||||||
|
- }
|
||||||
|
- return values;
|
||||||
|
- } else {
|
||||||
|
- JSONObject jsonObject = toJsonObject(obj);
|
||||||
|
- List<Object> values = new ArrayList<Object>();
|
||||||
|
-
|
||||||
|
- for (int i = 0; i < jsonObject.names().length(); i++) {
|
||||||
|
- String key = (String) jsonObject.names().get(i);
|
||||||
|
- Object val = jsonObject.get(key);
|
||||||
|
- values.add(unwrap(val));
|
||||||
|
-
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- return values;
|
||||||
|
- }
|
||||||
|
- } catch (JSONException e) {
|
||||||
|
- throw new JsonPathException(e);
|
||||||
|
- }
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- private Object createJsonElement(Object o) {
|
||||||
|
- return o;
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- private JSONArray toJsonArray(Object o) {
|
||||||
|
- return (JSONArray) o;
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- private JSONObject toJsonObject(Object o) {
|
||||||
|
- return (JSONObject) o;
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
-}
|
||||||
|
diff -Nru JsonPath-json-path-2.1.0/json-path/src/main/java/com/jayway/jsonpath/spi/mapper/JsonOrgMappingProvider.java JsonPath-json-path-2.1.0.json.org/json-path/src/main/java/com/jayway/jsonpath/spi/mapper/JsonOrgMappingProvider.java
|
||||||
|
--- JsonPath-json-path-2.1.0/json-path/src/main/java/com/jayway/jsonpath/spi/mapper/JsonOrgMappingProvider.java 2015-11-22 16:21:23.000000000 +0100
|
||||||
|
+++ JsonPath-json-path-2.1.0.json.org/json-path/src/main/java/com/jayway/jsonpath/spi/mapper/JsonOrgMappingProvider.java 1970-01-01 01:00:00.000000000 +0100
|
||||||
|
@@ -1,58 +0,0 @@
|
||||||
|
-package com.jayway.jsonpath.spi.mapper;
|
||||||
|
-
|
||||||
|
-import com.jayway.jsonpath.Configuration;
|
||||||
|
-import com.jayway.jsonpath.TypeRef;
|
||||||
|
-import org.json.JSONArray;
|
||||||
|
-import org.json.JSONObject;
|
||||||
|
-
|
||||||
|
-import java.util.ArrayList;
|
||||||
|
-import java.util.HashMap;
|
||||||
|
-import java.util.List;
|
||||||
|
-import java.util.Map;
|
||||||
|
-
|
||||||
|
-public class JsonOrgMappingProvider implements MappingProvider {
|
||||||
|
- @Override
|
||||||
|
- public <T> T map(Object source, Class<T> targetType, Configuration configuration) {
|
||||||
|
- if(source == null){
|
||||||
|
- return null;
|
||||||
|
- }
|
||||||
|
- if(targetType.equals(Object.class) || targetType.equals(List.class) || targetType.equals(Map.class)){
|
||||||
|
- return (T) mapToObject(source);
|
||||||
|
- }
|
||||||
|
- return (T)source;
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- @Override
|
||||||
|
- public <T> T map(Object source, TypeRef<T> targetType, Configuration configuration) {
|
||||||
|
- throw new UnsupportedOperationException("JsonOrg provider does not support TypeRef! Use a Jackson or Gson based provider");
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
-
|
||||||
|
- private Object mapToObject(Object source){
|
||||||
|
- if(source instanceof JSONArray){
|
||||||
|
- List<Object> mapped = new ArrayList<Object>();
|
||||||
|
- JSONArray array = (JSONArray) source;
|
||||||
|
-
|
||||||
|
- for (int i = 0; i < array.length(); i++){
|
||||||
|
- mapped.add(mapToObject(array.get(i)));
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- return mapped;
|
||||||
|
- }
|
||||||
|
- else if (source instanceof JSONObject){
|
||||||
|
- Map<String, Object> mapped = new HashMap<String, Object>();
|
||||||
|
- JSONObject obj = (JSONObject) source;
|
||||||
|
-
|
||||||
|
- for (Object o : obj.keySet()) {
|
||||||
|
- String key = o.toString();
|
||||||
|
- mapped.put(key, mapToObject(obj.get(key)));
|
||||||
|
- }
|
||||||
|
- return mapped;
|
||||||
|
- }
|
||||||
|
- else if (source == JSONObject.NULL){
|
||||||
|
- return null;
|
||||||
|
- } else {
|
||||||
|
- return source;
|
||||||
|
- }
|
||||||
|
- }
|
||||||
|
-}
|
||||||
|
diff -Nru JsonPath-json-path-2.1.0/json-path/src/test/java/com/jayway/jsonpath/BaseTest.java JsonPath-json-path-2.1.0.json.org/json-path/src/test/java/com/jayway/jsonpath/BaseTest.java
|
||||||
|
--- JsonPath-json-path-2.1.0/json-path/src/test/java/com/jayway/jsonpath/BaseTest.java 2015-11-22 16:21:23.000000000 +0100
|
||||||
|
+++ JsonPath-json-path-2.1.0.json.org/json-path/src/test/java/com/jayway/jsonpath/BaseTest.java 2016-06-08 16:42:52.250197491 +0200
|
||||||
|
@@ -5,23 +5,15 @@
|
||||||
|
import com.jayway.jsonpath.spi.json.GsonJsonProvider;
|
||||||
|
import com.jayway.jsonpath.spi.json.JacksonJsonNodeJsonProvider;
|
||||||
|
import com.jayway.jsonpath.spi.json.JacksonJsonProvider;
|
||||||
|
-import com.jayway.jsonpath.spi.json.JsonOrgJsonProvider;
|
||||||
|
import com.jayway.jsonpath.spi.json.JsonSmartJsonProvider;
|
||||||
|
import com.jayway.jsonpath.spi.mapper.GsonMappingProvider;
|
||||||
|
import com.jayway.jsonpath.spi.mapper.JacksonMappingProvider;
|
||||||
|
-import com.jayway.jsonpath.spi.mapper.JsonOrgMappingProvider;
|
||||||
|
import com.jayway.jsonpath.spi.mapper.JsonSmartMappingProvider;
|
||||||
|
|
||||||
|
import java.util.HashMap;
|
||||||
|
|
||||||
|
public class BaseTest {
|
||||||
|
|
||||||
|
- public static final Configuration JSON_ORG_CONFIGURATION = Configuration
|
||||||
|
- .builder()
|
||||||
|
- .mappingProvider(new JsonOrgMappingProvider())
|
||||||
|
- .jsonProvider(new JsonOrgJsonProvider())
|
||||||
|
- .build();
|
||||||
|
-
|
||||||
|
public static final Configuration GSON_CONFIGURATION = Configuration
|
||||||
|
.builder()
|
||||||
|
.mappingProvider(new GsonMappingProvider())
|
||||||
|
diff -Nru JsonPath-json-path-2.1.0/json-path/src/test/java/com/jayway/jsonpath/Configurations.java JsonPath-json-path-2.1.0.json.org/json-path/src/test/java/com/jayway/jsonpath/Configurations.java
|
||||||
|
--- JsonPath-json-path-2.1.0/json-path/src/test/java/com/jayway/jsonpath/Configurations.java 2015-11-22 16:21:23.000000000 +0100
|
||||||
|
+++ JsonPath-json-path-2.1.0.json.org/json-path/src/test/java/com/jayway/jsonpath/Configurations.java 2016-06-08 16:44:52.263228220 +0200
|
||||||
|
@@ -3,23 +3,15 @@
|
||||||
|
import com.jayway.jsonpath.spi.json.GsonJsonProvider;
|
||||||
|
import com.jayway.jsonpath.spi.json.JacksonJsonNodeJsonProvider;
|
||||||
|
import com.jayway.jsonpath.spi.json.JacksonJsonProvider;
|
||||||
|
-import com.jayway.jsonpath.spi.json.JsonOrgJsonProvider;
|
||||||
|
import com.jayway.jsonpath.spi.json.JsonSmartJsonProvider;
|
||||||
|
import com.jayway.jsonpath.spi.mapper.GsonMappingProvider;
|
||||||
|
import com.jayway.jsonpath.spi.mapper.JacksonMappingProvider;
|
||||||
|
-import com.jayway.jsonpath.spi.mapper.JsonOrgMappingProvider;
|
||||||
|
import com.jayway.jsonpath.spi.mapper.JsonSmartMappingProvider;
|
||||||
|
|
||||||
|
import java.util.Arrays;
|
||||||
|
|
||||||
|
public class Configurations {
|
||||||
|
|
||||||
|
- public static final Configuration JSON_ORG_CONFIGURATION = Configuration
|
||||||
|
- .builder()
|
||||||
|
- .mappingProvider(new JsonOrgMappingProvider())
|
||||||
|
- .jsonProvider(new JsonOrgJsonProvider())
|
||||||
|
- .build();
|
||||||
|
-
|
||||||
|
public static final Configuration GSON_CONFIGURATION = Configuration
|
||||||
|
.builder()
|
||||||
|
.mappingProvider(new GsonMappingProvider())
|
||||||
|
@@ -50,7 +42,6 @@
|
||||||
|
,GSON_CONFIGURATION
|
||||||
|
,JACKSON_CONFIGURATION
|
||||||
|
,JACKSON_JSON_NODE_CONFIGURATION
|
||||||
|
- ,JSON_ORG_CONFIGURATION
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
diff -Nru JsonPath-json-path-2.1.0/json-path/src/test/java/com/jayway/jsonpath/JsonOrgJsonProviderTest.java JsonPath-json-path-2.1.0.json.org/json-path/src/test/java/com/jayway/jsonpath/JsonOrgJsonProviderTest.java
|
||||||
|
--- JsonPath-json-path-2.1.0/json-path/src/test/java/com/jayway/jsonpath/JsonOrgJsonProviderTest.java 2015-11-22 16:21:23.000000000 +0100
|
||||||
|
+++ JsonPath-json-path-2.1.0.json.org/json-path/src/test/java/com/jayway/jsonpath/JsonOrgJsonProviderTest.java 1970-01-01 01:00:00.000000000 +0100
|
||||||
|
@@ -1,47 +0,0 @@
|
||||||
|
-package com.jayway.jsonpath;
|
||||||
|
-
|
||||||
|
-import org.json.JSONArray;
|
||||||
|
-import org.json.JSONObject;
|
||||||
|
-import org.junit.Test;
|
||||||
|
-
|
||||||
|
-import java.util.List;
|
||||||
|
-import java.util.Map;
|
||||||
|
-
|
||||||
|
-import static com.jayway.jsonpath.JsonPath.using;
|
||||||
|
-import static org.assertj.core.api.Assertions.assertThat;
|
||||||
|
-
|
||||||
|
-public class JsonOrgJsonProviderTest extends BaseTest {
|
||||||
|
-
|
||||||
|
-
|
||||||
|
- @Test
|
||||||
|
- public void an_object_can_be_read() {
|
||||||
|
-
|
||||||
|
- JSONObject book = using(JSON_ORG_CONFIGURATION).parse(JSON_DOCUMENT).read("$.store.book[0]");
|
||||||
|
-
|
||||||
|
- assertThat(book.get("author").toString()).isEqualTo("Nigel Rees");
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- @Test
|
||||||
|
- public void a_property_can_be_read() {
|
||||||
|
-
|
||||||
|
- String category = using(JSON_ORG_CONFIGURATION).parse(JSON_DOCUMENT).read("$.store.book[0].category");
|
||||||
|
-
|
||||||
|
- assertThat(category).isEqualTo("reference");
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- @Test
|
||||||
|
- public void a_filter_can_be_applied() {
|
||||||
|
-
|
||||||
|
- JSONArray fictionBooks = using(JSON_ORG_CONFIGURATION).parse(JSON_DOCUMENT).read("$.store.book[?(@.category == 'fiction')]");
|
||||||
|
-
|
||||||
|
- assertThat(fictionBooks.length()).isEqualTo(3);
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- @Test
|
||||||
|
- public void result_can_be_mapped_to_object() {
|
||||||
|
-
|
||||||
|
- List<Map<String, Object>> books = using(JSON_ORG_CONFIGURATION).parse(JSON_DOCUMENT).read("$.store.book", List.class);
|
||||||
|
-
|
||||||
|
- assertThat(books.size()).isEqualTo(4);
|
||||||
|
- }
|
||||||
|
-}
|
||||||
65
json-path-2.1.0.pom
Normal file
65
json-path-2.1.0.pom
Normal file
@ -0,0 +1,65 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
|
||||||
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
||||||
|
<modelVersion>4.0.0</modelVersion>
|
||||||
|
<groupId>com.jayway.jsonpath</groupId>
|
||||||
|
<artifactId>json-path</artifactId>
|
||||||
|
<version>2.1.0</version>
|
||||||
|
<name>Json Path</name>
|
||||||
|
<description>Java port of Stefan Goessner JsonPath.</description>
|
||||||
|
<url>https://github.com/jayway/JsonPath</url>
|
||||||
|
<licenses>
|
||||||
|
<license>
|
||||||
|
<name>The Apache Software License, Version 2.0</name>
|
||||||
|
<url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
|
||||||
|
<distribution>repo</distribution>
|
||||||
|
</license>
|
||||||
|
</licenses>
|
||||||
|
<developers>
|
||||||
|
<developer>
|
||||||
|
<id>kalle.stenflo</id>
|
||||||
|
<name>Kalle Stenflo</name>
|
||||||
|
<email>kalle.stenflo (a) gmail.com</email>
|
||||||
|
</developer>
|
||||||
|
</developers>
|
||||||
|
<scm>
|
||||||
|
<connection>scm:git:git://github.com/jayway/JsonPath.git</connection>
|
||||||
|
<developerConnection>scm:git:git://github.com/jayway/JsonPath.git</developerConnection>
|
||||||
|
<url>scm:git:git://github.com/jayway/JsonPath.git</url>
|
||||||
|
</scm>
|
||||||
|
<dependencies>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.slf4j</groupId>
|
||||||
|
<artifactId>slf4j-api</artifactId>
|
||||||
|
<version>1.7.13</version>
|
||||||
|
<scope>compile</scope>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.json</groupId>
|
||||||
|
<artifactId>json</artifactId>
|
||||||
|
<version>20140107</version>
|
||||||
|
<scope>compile</scope>
|
||||||
|
<optional>true</optional>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>com.google.code.gson</groupId>
|
||||||
|
<artifactId>gson</artifactId>
|
||||||
|
<version>2.3.1</version>
|
||||||
|
<scope>compile</scope>
|
||||||
|
<optional>true</optional>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>com.fasterxml.jackson.core</groupId>
|
||||||
|
<artifactId>jackson-databind</artifactId>
|
||||||
|
<version>2.6.3</version>
|
||||||
|
<scope>compile</scope>
|
||||||
|
<optional>true</optional>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>net.minidev</groupId>
|
||||||
|
<artifactId>json-smart</artifactId>
|
||||||
|
<version>2.2</version>
|
||||||
|
<scope>compile</scope>
|
||||||
|
</dependency>
|
||||||
|
</dependencies>
|
||||||
|
</project>
|
||||||
BIN
json-path-2.1.0.tar.gz
Normal file
BIN
json-path-2.1.0.tar.gz
Normal file
Binary file not shown.
56
json-path-assert-2.1.0.pom
Normal file
56
json-path-assert-2.1.0.pom
Normal file
@ -0,0 +1,56 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
|
||||||
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
||||||
|
<modelVersion>4.0.0</modelVersion>
|
||||||
|
<groupId>com.jayway.jsonpath</groupId>
|
||||||
|
<artifactId>json-path-assert</artifactId>
|
||||||
|
<version>2.1.0</version>
|
||||||
|
<name>JsonPath Assert</name>
|
||||||
|
<description>Assertions on Json using JsonPath</description>
|
||||||
|
<url>https://github.com/jayway/JsonPath</url>
|
||||||
|
<licenses>
|
||||||
|
<license>
|
||||||
|
<name>The Apache Software License, Version 2.0</name>
|
||||||
|
<url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
|
||||||
|
<distribution>repo</distribution>
|
||||||
|
</license>
|
||||||
|
</licenses>
|
||||||
|
<developers>
|
||||||
|
<developer>
|
||||||
|
<id>kalle.stenflo</id>
|
||||||
|
<name>Kalle Stenflo</name>
|
||||||
|
<email>kalle.stenflo (a) gmail.com</email>
|
||||||
|
</developer>
|
||||||
|
</developers>
|
||||||
|
<scm>
|
||||||
|
<connection>scm:git:git://github.com/jayway/JsonPath.git</connection>
|
||||||
|
<developerConnection>scm:git:git://github.com/jayway/JsonPath.git</developerConnection>
|
||||||
|
<url>scm:git:git://github.com/jayway/JsonPath.git</url>
|
||||||
|
</scm>
|
||||||
|
<dependencies>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.slf4j</groupId>
|
||||||
|
<artifactId>slf4j-api</artifactId>
|
||||||
|
<version>1.7.13</version>
|
||||||
|
<scope>compile</scope>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.hamcrest</groupId>
|
||||||
|
<artifactId>hamcrest-core</artifactId>
|
||||||
|
<version>1.3</version>
|
||||||
|
<scope>compile</scope>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>com.jayway.jsonpath</groupId>
|
||||||
|
<artifactId>json-path</artifactId>
|
||||||
|
<version>2.1.0</version>
|
||||||
|
<scope>compile</scope>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.hamcrest</groupId>
|
||||||
|
<artifactId>hamcrest-library</artifactId>
|
||||||
|
<version>1.3</version>
|
||||||
|
<scope>compile</scope>
|
||||||
|
</dependency>
|
||||||
|
</dependencies>
|
||||||
|
</project>
|
||||||
109
json-path.spec
Normal file
109
json-path.spec
Normal file
@ -0,0 +1,109 @@
|
|||||||
|
Name: json-path
|
||||||
|
Version: 2.1.0
|
||||||
|
Release: 1
|
||||||
|
Summary: Java JsonPath implementation
|
||||||
|
License: ASL 2.0 and BSD
|
||||||
|
URL: https://github.com/jayway/JsonPath
|
||||||
|
Source0: https://github.com/jayway/JsonPath/archive/json-path-%{version}.tar.gz
|
||||||
|
Source1: https://repo1.maven.org/maven2/com/jayway/jsonpath/json-path/%{version}/json-path-%{version}.pom
|
||||||
|
Source2: https://repo1.maven.org/maven2/com/jayway/jsonpath/json-path-assert/%{version}/json-path-assert-%{version}.pom
|
||||||
|
Patch0: %{name}-2.1.0-JsonOrg.patch
|
||||||
|
BuildRequires: maven-local mvn(com.fasterxml.jackson.core:jackson-databind)
|
||||||
|
BuildRequires: mvn(com.google.code.gson:gson) mvn(commons-io:commons-io) mvn(junit:junit)
|
||||||
|
BuildRequires: mvn(net.minidev:json-smart) mvn(org.apache.felix:maven-bundle-plugin)
|
||||||
|
BuildRequires: mvn(org.assertj:assertj-core) mvn(org.hamcrest:hamcrest-library)
|
||||||
|
BuildRequires: mvn(org.slf4j:slf4j-api) mvn(org.slf4j:slf4j-simple)
|
||||||
|
BuildArch: noarch
|
||||||
|
%description
|
||||||
|
Java DSL for reading and testing JSON documents.
|
||||||
|
|
||||||
|
%package javadoc
|
||||||
|
Summary: Javadoc for %{name}
|
||||||
|
%description javadoc
|
||||||
|
This package contains javadoc for %{name}.
|
||||||
|
|
||||||
|
%prep
|
||||||
|
%setup -q -n JsonPath-%{name}-%{version}
|
||||||
|
find -type f -name *.jar -print -delete
|
||||||
|
find -type f -name *.class -print -delete
|
||||||
|
cp -p %{SOURCE1} %{name}/pom.xml
|
||||||
|
cp -p %{SOURCE2} %{name}-assert/pom.xml
|
||||||
|
%patch0 -p1
|
||||||
|
rm -rf %{name}/src/main/java/com/jayway/jsonpath/spi/json/JsonOrg*.java \
|
||||||
|
%{name}/src/main/java/com/jayway/jsonpath/spi/mapper/JsonOrg*.java \
|
||||||
|
%{name}/src/test/java/com/jayway/jsonpath/JsonOrg*.java
|
||||||
|
%pom_remove_dep org.json:json %{name}
|
||||||
|
cat > pom.xml << EOF
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<project
|
||||||
|
xmlns="http://maven.apache.org/POM/4.0.0"
|
||||||
|
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"
|
||||||
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
||||||
|
<modelVersion>4.0.0</modelVersion>
|
||||||
|
<groupId>com.jayway.jsonpath</groupId>
|
||||||
|
<artifactId>%{name}-parent</artifactId>
|
||||||
|
<version>%{version}</version>
|
||||||
|
<packaging>pom</packaging>
|
||||||
|
<name>Java JsonPath implementation</name>
|
||||||
|
<modules>
|
||||||
|
<module>%{name}</module>
|
||||||
|
<module>%{name}-assert</module>
|
||||||
|
</modules>
|
||||||
|
</project>
|
||||||
|
EOF
|
||||||
|
for p in %{name} %{name}-assert ;do
|
||||||
|
%pom_xpath_inject "pom:project" "<packaging>bundle</packaging>" ${p}
|
||||||
|
%pom_add_plugin "org.apache.maven.plugins:maven-jar-plugin:2.4" ${p} "
|
||||||
|
<configuration>
|
||||||
|
<archive>
|
||||||
|
<manifest>
|
||||||
|
<addDefaultImplementationEntries>true</addDefaultImplementationEntries>
|
||||||
|
</manifest>
|
||||||
|
</archive>
|
||||||
|
</configuration>"
|
||||||
|
%pom_add_plugin org.apache.felix:maven-bundle-plugin:2.3.7 ${p} '
|
||||||
|
<extensions>true</extensions>
|
||||||
|
<configuration>
|
||||||
|
<instructions>
|
||||||
|
<Bundle-SymbolicName>${project.groupId}.${project.artifactId}</Bundle-SymbolicName>
|
||||||
|
<Bundle-Name>${project.name}</Bundle-Name>
|
||||||
|
<Bundle-Version>${project.version}</Bundle-Version>
|
||||||
|
</instructions>
|
||||||
|
</configuration>
|
||||||
|
<executions>
|
||||||
|
<execution>
|
||||||
|
<id>bundle-manifest</id>
|
||||||
|
<phase>process-classes</phase>
|
||||||
|
<goals>
|
||||||
|
<goal>manifest</goal>
|
||||||
|
</goals>
|
||||||
|
</execution>
|
||||||
|
</executions>'
|
||||||
|
done
|
||||||
|
%pom_add_dep junit:junit:4.12:test %{name}
|
||||||
|
%pom_add_dep org.assertj:assertj-core:2.1.0:test %{name}
|
||||||
|
%pom_add_dep org.hamcrest:hamcrest-library:1.3:test %{name}
|
||||||
|
%pom_add_dep junit:junit:4.12:test %{name}-assert
|
||||||
|
for s in %{name}/src/test/java/com/jayway/jsonpath/old/internal/ScanPathTokenTest.java;do
|
||||||
|
native2ascii -encoding UTF8 ${s} ${s}
|
||||||
|
done
|
||||||
|
%mvn_file :%{name} %{name}
|
||||||
|
%mvn_file :%{name}-assert %{name}-assert
|
||||||
|
%mvn_package :%{name}-parent __noinstall
|
||||||
|
|
||||||
|
%build
|
||||||
|
%mvn_build -- -Dproject.build.sourceEncoding=UTF-8
|
||||||
|
|
||||||
|
%install
|
||||||
|
%mvn_install
|
||||||
|
|
||||||
|
%files -f .mfiles
|
||||||
|
%doc README.md
|
||||||
|
%license LICENSE
|
||||||
|
|
||||||
|
%files javadoc -f .mfiles-javadoc
|
||||||
|
%license LICENSE
|
||||||
|
|
||||||
|
%changelog
|
||||||
|
* Mon Aug 24 2020 wangchong <wangchong56@huawei.com> - 2.1.0-1
|
||||||
|
- package init
|
||||||
4
json-path.yaml
Normal file
4
json-path.yaml
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
version_control: github
|
||||||
|
src_repo: jayway/JsonPath
|
||||||
|
tag_prefix: "json-path-"
|
||||||
|
seperator: "."
|
||||||
Loading…
x
Reference in New Issue
Block a user