alter
Change-Id: I680c87287ddd8b1d80f960c963fee3adcb46a425
This commit is contained in:
parent
5b8e9ef5d8
commit
f2f31cd60a
@ -4,6 +4,7 @@ import com.fasterxml.jackson.core.JsonProcessingException;
|
||||
import com.fasterxml.jackson.core.type.TypeReference;
|
||||
import org.apache.xmlrpc.XmlRpcException;
|
||||
import org.apache.xmlrpc.client.XmlRpcClient;
|
||||
import org.apache.xmlrpc.client.XmlRpcClientConfig;
|
||||
import org.apache.xmlrpc.client.XmlRpcClientConfigImpl;
|
||||
import org.chobit.wp.exception.WPClientException;
|
||||
import org.chobit.wp.model.request.PostFilter;
|
||||
@ -32,9 +33,15 @@ class WPClient {
|
||||
private XmlRpcClient client;
|
||||
|
||||
|
||||
WPClient(String xmlRpcUrl, boolean trustAll) throws MalformedURLException {
|
||||
WPClient(String xmlRpcUrl, boolean trustAll, int connectTimeout, int readTimeout) throws MalformedURLException {
|
||||
XmlRpcClientConfigImpl c = new XmlRpcClientConfigImpl();
|
||||
c.setServerURL(new URL(xmlRpcUrl));
|
||||
if (connectTimeout > 0) {
|
||||
c.setConnectionTimeout(config.getConnectTimeout());
|
||||
}
|
||||
if (readTimeout > 0) {
|
||||
c.setReplyTimeout(config.getReadTimeout());
|
||||
}
|
||||
if (trustAll) {
|
||||
acceptAndCertificate();
|
||||
}
|
||||
@ -44,7 +51,8 @@ class WPClient {
|
||||
|
||||
|
||||
WPClient(WPConfig cfg) throws MalformedURLException {
|
||||
this(cfg.getXmlRpcUrl(), cfg.isTrustAll());
|
||||
this(cfg.getXmlRpcUrl(), cfg.isTrustAll(), cfg.getConnectTimeout(), cfg.getReadTimeout());
|
||||
XmlRpcClientConfig c = this.client.getClientConfig();
|
||||
this.config = cfg;
|
||||
}
|
||||
|
||||
|
@ -15,6 +15,10 @@ public final class WPConfig {
|
||||
|
||||
private boolean trustAll;
|
||||
|
||||
private int connectTimeout;
|
||||
|
||||
private int readTimeout;
|
||||
|
||||
WPConfig() {
|
||||
}
|
||||
|
||||
@ -57,4 +61,20 @@ public final class WPConfig {
|
||||
public void setTrustAll(boolean trustAll) {
|
||||
this.trustAll = trustAll;
|
||||
}
|
||||
|
||||
public int getConnectTimeout() {
|
||||
return connectTimeout;
|
||||
}
|
||||
|
||||
public void setConnectTimeout(int connectTimeout) {
|
||||
this.connectTimeout = connectTimeout;
|
||||
}
|
||||
|
||||
public int getReadTimeout() {
|
||||
return readTimeout;
|
||||
}
|
||||
|
||||
public void setReadTimeout(int readTimeout) {
|
||||
this.readTimeout = readTimeout;
|
||||
}
|
||||
}
|
||||
|
@ -37,9 +37,30 @@ public final class WPConfigBuilder {
|
||||
}
|
||||
|
||||
|
||||
public WPConfigBuilder connectTimeout(int connectTimeout) {
|
||||
if (connectTimeout < 0) {
|
||||
throw new IllegalArgumentException("timeout cannot be negative");
|
||||
}
|
||||
this.config.setConnectTimeout(connectTimeout);
|
||||
return this;
|
||||
}
|
||||
|
||||
|
||||
public WPConfigBuilder readTimeout(int readTimeout) {
|
||||
if (readTimeout < 0) {
|
||||
throw new IllegalArgumentException("timeout cannot be negative");
|
||||
}
|
||||
this.config.setReadTimeout(readTimeout);
|
||||
return this;
|
||||
}
|
||||
|
||||
|
||||
public WPConfig build() {
|
||||
try {
|
||||
WPClient client = new WPClient(config.getXmlRpcUrl(), config.isTrustAll());
|
||||
WPClient client = new WPClient(config.getXmlRpcUrl(),
|
||||
config.isTrustAll(),
|
||||
config.getConnectTimeout(),
|
||||
config.getReadTimeout());
|
||||
List<UserBlog> list = client.getUsersBlogs(config.getUsername(), config.getPassword());
|
||||
if (null == list || list.isEmpty()) {
|
||||
throw new WPClientException("Error in wp config, please check");
|
||||
|
@ -215,7 +215,7 @@ public class PostRequest extends Request {
|
||||
}
|
||||
|
||||
@Transient
|
||||
public void setCategories(String... categories) {
|
||||
public void addCategories(String... categories) {
|
||||
if (null == termsNames) {
|
||||
setTermsNames(new HashMap<>(2));
|
||||
}
|
||||
@ -225,7 +225,7 @@ public class PostRequest extends Request {
|
||||
}
|
||||
|
||||
@Transient
|
||||
public void setTags(String... tags) {
|
||||
public void addTags(String... tags) {
|
||||
if (null == termsNames) {
|
||||
setTermsNames(new HashMap<>(2));
|
||||
}
|
||||
|
@ -73,8 +73,8 @@ public class WordPressTest {
|
||||
PostRequest post = new PostRequest();
|
||||
post.setPostTitle("测试PostName");
|
||||
post.setPostContent("这是一段测试文章内容");
|
||||
post.setCategories("测试");
|
||||
post.setTags("a", "b", "c");
|
||||
post.addCategories("测试");
|
||||
post.addTags("a", "b", "c");
|
||||
post.setPostName("test-post-name");
|
||||
int postId = wp.newPost(post);
|
||||
System.out.println(postId);
|
||||
|
Loading…
x
Reference in New Issue
Block a user