ThreadPoolInfo to implement Writeable rather than Streamable
This commit is contained in:
parent
27e7fc734c
commit
2370c25fa4
|
@ -211,7 +211,7 @@ public class NodeInfo extends BaseNodeResponse {
|
||||||
jvm = new JvmInfo(in);
|
jvm = new JvmInfo(in);
|
||||||
}
|
}
|
||||||
if (in.readBoolean()) {
|
if (in.readBoolean()) {
|
||||||
threadPool = ThreadPoolInfo.readThreadPoolInfo(in);
|
threadPool = new ThreadPoolInfo(in);
|
||||||
}
|
}
|
||||||
if (in.readBoolean()) {
|
if (in.readBoolean()) {
|
||||||
transport = TransportInfo.readTransportInfo(in);
|
transport = TransportInfo.readTransportInfo(in);
|
||||||
|
|
|
@ -21,49 +21,33 @@ package org.elasticsearch.threadpool;
|
||||||
|
|
||||||
import org.elasticsearch.common.io.stream.StreamInput;
|
import org.elasticsearch.common.io.stream.StreamInput;
|
||||||
import org.elasticsearch.common.io.stream.StreamOutput;
|
import org.elasticsearch.common.io.stream.StreamOutput;
|
||||||
import org.elasticsearch.common.io.stream.Streamable;
|
import org.elasticsearch.common.io.stream.Writeable;
|
||||||
import org.elasticsearch.common.xcontent.ToXContent;
|
import org.elasticsearch.common.xcontent.ToXContent;
|
||||||
import org.elasticsearch.common.xcontent.XContentBuilder;
|
import org.elasticsearch.common.xcontent.XContentBuilder;
|
||||||
|
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
|
import java.util.Collections;
|
||||||
import java.util.Iterator;
|
import java.util.Iterator;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
public class ThreadPoolInfo implements Writeable, Iterable<ThreadPool.Info>, ToXContent {
|
||||||
*/
|
|
||||||
public class ThreadPoolInfo implements Streamable, Iterable<ThreadPool.Info>, ToXContent {
|
|
||||||
|
|
||||||
private List<ThreadPool.Info> infos;
|
|
||||||
|
|
||||||
ThreadPoolInfo() {
|
|
||||||
}
|
|
||||||
|
|
||||||
|
private final List<ThreadPool.Info> infos;
|
||||||
|
|
||||||
public ThreadPoolInfo(List<ThreadPool.Info> infos) {
|
public ThreadPoolInfo(List<ThreadPool.Info> infos) {
|
||||||
this.infos = infos;
|
this.infos = Collections.unmodifiableList(infos);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
public ThreadPoolInfo(StreamInput in) throws IOException {
|
||||||
public Iterator<ThreadPool.Info> iterator() {
|
|
||||||
return infos.iterator();
|
|
||||||
}
|
|
||||||
|
|
||||||
public static ThreadPoolInfo readThreadPoolInfo(StreamInput in) throws IOException {
|
|
||||||
ThreadPoolInfo info = new ThreadPoolInfo();
|
|
||||||
info.readFrom(in);
|
|
||||||
return info;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void readFrom(StreamInput in) throws IOException {
|
|
||||||
int size = in.readVInt();
|
int size = in.readVInt();
|
||||||
infos = new ArrayList<>(size);
|
List<ThreadPool.Info> infos = new ArrayList<>(size);
|
||||||
for (int i = 0; i < size; i++) {
|
for (int i = 0; i < size; i++) {
|
||||||
ThreadPool.Info info = new ThreadPool.Info();
|
ThreadPool.Info info = new ThreadPool.Info();
|
||||||
info.readFrom(in);
|
info.readFrom(in);
|
||||||
infos.add(info);
|
infos.add(info);
|
||||||
}
|
}
|
||||||
|
this.infos = Collections.unmodifiableList(infos);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -74,6 +58,11 @@ public class ThreadPoolInfo implements Streamable, Iterable<ThreadPool.Info>, To
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Iterator<ThreadPool.Info> iterator() {
|
||||||
|
return infos.iterator();
|
||||||
|
}
|
||||||
|
|
||||||
static final class Fields {
|
static final class Fields {
|
||||||
static final String THREAD_POOL = "thread_pool";
|
static final String THREAD_POOL = "thread_pool";
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue