/**
* Copyright (c) <2013> <Radware Ltd.> and others. All rights reserved.
*
* This program and the accompanying materials are made available under the terms of the Eclipse Public License
* v1.0 which accompanies this distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
* @author Gera Goft
* @version 0.1
*/
package org.opendaylight.defense4all.framework.core;
import java.io.IOException;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.io.Serializable;
import java.util.Properties;
import me.prettyprint.hector.api.Serializer;
public class RepoCD implements Serializable {
private static final long serialVersionUID = 1L;
public String columnName;
public transient Serializer<?> columnValueSerializer;
public Properties columnProperties;
public RepoCD(String columnName, Serializer<?> columnValueSerializer, Properties columnProperties) {
this.columnName = columnName;
this.columnValueSerializer = columnValueSerializer;
this.columnProperties = columnProperties;
}
private void writeObject(ObjectOutputStream oos) throws IOException {
oos.defaultWriteObject(); // default serialization
oos.writeUTF(SerializersSerializer.getInstance().toString(columnValueSerializer));
}
private void readObject(ObjectInputStream ois) throws ClassNotFoundException, IOException, InstantiationException, IllegalAccessException {
ois.defaultReadObject(); // default deserialization
columnValueSerializer = SerializersSerializer.getInstance().fromString(ois.readUTF());
}
}