Skip to content

Commit

Permalink
Add ArrayList to serialization test
Browse files Browse the repository at this point in the history
  • Loading branch information
vsevel authored and zakkak committed Sep 15, 2021
1 parent 0d23ff2 commit 3913fd0
Show file tree
Hide file tree
Showing 3 changed files with 19 additions and 2 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,8 @@
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.io.PrintWriter;
import java.util.ArrayList;
import java.util.List;

import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
Expand Down Expand Up @@ -42,14 +44,16 @@ private void reflectiveSetterInvoke(HttpServletResponse resp) throws IOException
ExternalizablePerson ep = new ExternalizablePerson();
ep.setName("Sheldon 2.0");
instance.setExternalizablePerson(ep);
instance.setList(new ArrayList<>(List.of("Hello World!")));
ByteArrayOutputStream out = new ByteArrayOutputStream();
ObjectOutputStream os = new ObjectOutputStream(out);
os.writeObject(instance);
ByteArrayInputStream bais = new ByteArrayInputStream(out.toByteArray());
ObjectInputStream is = new ObjectInputStream(bais);
SomeSerializationObject result = (SomeSerializationObject) is.readObject();
if (result.getPerson().getName().equals("Sheldon")
&& result.getExternalizablePerson().getName().equals("Sheldon 2.0")) {
&& result.getExternalizablePerson().getName().equals("Sheldon 2.0")
&& result.getList().toString().equals("[Hello World!]")) {
resp.getWriter().write("OK");
} else {
reportException("Serialized output differs from input", null, resp);
Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,11 @@
package io.quarkus.it.corestuff.serialization;

import java.util.ArrayList;
import java.util.List;

import io.quarkus.runtime.annotations.RegisterForReflection;

@RegisterForReflection(targets = String.class, serialization = true)
@RegisterForReflection(targets = { List.class, ArrayList.class, String.class }, serialization = true)
public class SerializationConfig {

}
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
package io.quarkus.it.corestuff.serialization;

import java.io.Serializable;
import java.util.List;

import io.quarkus.runtime.annotations.RegisterForReflection;

Expand All @@ -9,6 +10,7 @@ public class SomeSerializationObject implements Serializable {

private Person person;
private ExternalizablePerson externalizablePerson;
private List<String> list;

public Person getPerson() {
return person;
Expand All @@ -25,4 +27,12 @@ public ExternalizablePerson getExternalizablePerson() {
public void setExternalizablePerson(ExternalizablePerson externalizablePerson) {
this.externalizablePerson = externalizablePerson;
}

public List<String> getList() {
return list;
}

public void setList(List<String> list) {
this.list = list;
}
}

0 comments on commit 3913fd0

Please sign in to comment.