diff --git a/pom.xml b/pom.xml
index 9444510..8270949 100644
--- a/pom.xml
+++ b/pom.xml
@@ -77,6 +77,11 @@
test
+
+ com.google.code.gson
+ gson
+ 2.8.6
+
diff --git a/src/main/java/com/icoderman/woocommerce/DefaultHttpClient.java b/src/main/java/com/icoderman/woocommerce/DefaultHttpClient.java
index e392865..a855135 100644
--- a/src/main/java/com/icoderman/woocommerce/DefaultHttpClient.java
+++ b/src/main/java/com/icoderman/woocommerce/DefaultHttpClient.java
@@ -1,24 +1,22 @@
package com.icoderman.woocommerce;
-import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;
+import com.google.gson.Gson;
import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.NameValuePair;
-import org.apache.http.client.methods.HttpDelete;
-import org.apache.http.client.methods.HttpEntityEnclosingRequestBase;
-import org.apache.http.client.methods.HttpGet;
-import org.apache.http.client.methods.HttpPost;
-import org.apache.http.client.methods.HttpPut;
-import org.apache.http.client.methods.HttpRequestBase;
+import org.apache.http.client.methods.*;
import org.apache.http.client.utils.URIBuilder;
-import org.apache.http.entity.ByteArrayEntity;
import org.apache.http.entity.ContentType;
+import org.apache.http.entity.StringEntity;
import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClientBuilder;
import org.apache.http.message.BasicNameValuePair;
import java.io.IOException;
+import java.io.InputStream;
+import java.io.InputStreamReader;
+import java.io.Reader;
import java.net.URISyntaxException;
import java.util.ArrayList;
import java.util.List;
@@ -94,13 +92,11 @@ public Map delete(String url, Map params) {
}
private Map postEntity(Map objectForJson, HttpEntityEnclosingRequestBase httpPost) {
- try {
- HttpEntity entity = new ByteArrayEntity(this.mapper.writeValueAsBytes(objectForJson), ContentType.APPLICATION_JSON);
- httpPost.setEntity(entity);
- return getEntityAndReleaseConnection(httpPost, Map.class);
- } catch (JsonProcessingException e) {
- throw new RuntimeException(e);
- }
+ Gson gson = new Gson();
+ System.out.println(gson.toJson(objectForJson));
+ HttpEntity entity = new StringEntity(gson.toJson(objectForJson), ContentType.APPLICATION_JSON);
+ httpPost.setEntity(entity);
+ return getEntityAndReleaseConnection(httpPost, Map.class);
}
private List getParametersAsList(Map params) {
@@ -117,6 +113,7 @@ private T getEntityAndReleaseConnection(HttpRequestBase httpRequest, Class T getEntityAndReleaseConnection(HttpRequestBase httpRequest, Class productInfo = new HashMap<>();
productInfo.put("name", "Premium Quality");
productInfo.put("type", "simple");
- productInfo.put("regular_price", "21.99");
+ productInfo.put("regular_price", "168.06");
+ productInfo.put("downloadable", true);
+ productInfo.put("download_expiry", "30");
+ productInfo.put("virtual", true);
productInfo.put("description", "Pellentesque habitant morbi tristique senectus et netus");
+
Map product = wooCommerce.create(EndpointBaseType.PRODUCTS.getValue(), productInfo);
Assert.assertNotNull(product);
}