src/main/java/org/embulk/input/kintone/KintoneAccessor.java in embulk-input-kintone-0.1.3 vs src/main/java/org/embulk/input/kintone/KintoneAccessor.java in embulk-input-kintone-0.1.4

- old
+ new

@@ -3,16 +3,18 @@ import com.cybozu.kintone.client.model.file.FileModel; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import com.cybozu.kintone.client.model.record.field.FieldValue; import com.cybozu.kintone.client.model.member.Member; +import com.google.gson.Gson; import java.util.ArrayList; import java.util.HashMap; public class KintoneAccessor { private final Logger logger = LoggerFactory.getLogger(KintoneAccessor.class); + private final Gson gson = new Gson(); private final HashMap<String, FieldValue> record; private final String delimiter = "\n"; public KintoneAccessor(final HashMap<String, FieldValue> record) { @@ -28,11 +30,11 @@ ArrayList<Member> members = (ArrayList<Member>) this.record.get(name).getValue(); return members.stream().map(Member::getCode) .reduce((accum, value) -> accum + this.delimiter + value) .orElse(""); case SUBTABLE: - // TODO: support sub table - return ""; + Object subTableValueItem = this.record.get(name).getValue(); + return gson.toJson(subTableValueItem); case CREATOR: case MODIFIER: Member m = (Member) this.record.get(name).getValue(); return m.getCode(); case CHECK_BOX: