Я прочитал документацию по DataSerialization
на
http://hazelcast.org/docs/latest/manual/html/dataserialization.html
и успешно написал мои writeData
и readData
для примитивов и пользовательских объектов, но я не понимаю, как сериализовать/десериализовать массив объектов условий. Объект условия - класс, который я написал.
private NEConditionInfo[] m_arryConditions
@Override
public void writeData(ObjectDataOutput aOut) throws IOException
{
?
}
@Override
public void readData(ObjectDataInput aIn) throws IOException
{
?
}
writeObject/readObject
ли я по массиву, если не null
вызов writeObject/readObject
для каждого элемента?
DataSerializable
ли мой объект состояния быть DataSerializable
чтобы его можно было использовать?
Объект условия в настоящее время java.io.Serializable
.
Любая помощь очень ценится!
В Hazelcast нет встроенной поддержки массивов afaik
Поэтому для сериализации сначала вы сериализуете размер, а затем выполняете итерацию по каждому элементу и вызываете objectdataouput.writeObject
И для десериализации вы читаете размер и создаете массив, а затем выполняете итерацию по каждому элементу, чтобы вызвать десериализацию и сохранить его в массиве.
Объект вашего условия не обязательно должен быть DataSerializable для использования, если Hazelcast знает, как его сериализовать. Таким образом, в этом случае ЛПЭ может видеть, что это java.io.Serializable