Changes for BAEL-1050: Added new field (#2282)
This commit is contained in:
parent
600d610ddf
commit
b558adec06
@ -4,12 +4,12 @@ import java.io.Serializable;
|
|||||||
|
|
||||||
public class AppleProduct implements Serializable {
|
public class AppleProduct implements Serializable {
|
||||||
|
|
||||||
private static final long serialVersionUID = 1234567L; // user-defined (i.e. not default or generated)
|
private static final long serialVersionUID = 1234567L; // user-defined (i.e. not default or generated)
|
||||||
// private static final long serialVersionUID = 7654321L; // user-defined (i.e. not default or generated)
|
// private static final long serialVersionUID = 7654321L; // user-defined (i.e. not default or generated)
|
||||||
|
|
||||||
public String headphonePort;
|
public String headphonePort;
|
||||||
public String thunderboltPort;
|
public String thunderboltPort;
|
||||||
public String lighteningPort;
|
public String lightningPort;
|
||||||
|
|
||||||
public String getHeadphonePort() {
|
public String getHeadphonePort() {
|
||||||
return headphonePort;
|
return headphonePort;
|
||||||
@ -23,4 +23,8 @@ public class AppleProduct implements Serializable {
|
|||||||
return serialVersionUID;
|
return serialVersionUID;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public String getLightningPort() {
|
||||||
|
return lightningPort;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
@ -9,11 +9,12 @@ public class DeserializationUtility {
|
|||||||
|
|
||||||
public static void main(String[] args) throws ClassNotFoundException, IOException {
|
public static void main(String[] args) throws ClassNotFoundException, IOException {
|
||||||
|
|
||||||
String serializedObj = "rO0ABXNyACljb20uYmFlbGR1bmcuZGVzZXJpYWxpemF0aW9uLkFwcGxlUHJvZHVjdAAAAAAAEtaHAgADTAANaGVhZHBob25lUG9ydHQAEkxqYXZhL2xhbmcvU3RyaW5nO0wADmxpZ2h0ZW5pbmdQb3J0cQB+AAFMAA90aHVuZGVyYm9sdFBvcnRxAH4AAXhwdAARaGVhZHBob25lUG9ydDIwMjBwdAATdGh1bmRlcmJvbHRQb3J0MjAyMA==";
|
String serializedObj = "rO0ABXNyACljb20uYmFlbGR1bmcuZGVzZXJpYWxpemF0aW9uLkFwcGxlUHJvZHVjdAAAAAAAEtaHAgADTAANaGVhZHBob25lUG9ydHQAEkxqYXZhL2xhbmcvU3RyaW5nO0wADWxpZ2h0bmluZ1BvcnRxAH4AAUwAD3RodW5kZXJib2x0UG9ydHEAfgABeHB0ABFoZWFkcGhvbmVQb3J0MjAyMHQAEWxpZ2h0bmluZ1BvcnQyMDIwdAATdGh1bmRlcmJvbHRQb3J0MjAyMA==";
|
||||||
System.out.println("Deserializing AppleProduct...");
|
System.out.println("Deserializing AppleProduct...");
|
||||||
AppleProduct deserializedObj = (AppleProduct) deSerializeObjectFromString(serializedObj);
|
AppleProduct deserializedObj = (AppleProduct) deSerializeObjectFromString(serializedObj);
|
||||||
System.out.println("Headphone port of AppleProduct:" + deserializedObj.getHeadphonePort());
|
System.out.println("Headphone port of AppleProduct:" + deserializedObj.getHeadphonePort());
|
||||||
System.out.println("Thunderbolt port of AppleProduct:" + deserializedObj.getThunderboltPort());
|
System.out.println("Thunderbolt port of AppleProduct:" + deserializedObj.getThunderboltPort());
|
||||||
|
System.out.println("LightningPort port of AppleProduct:" + deserializedObj.getLightningPort());
|
||||||
}
|
}
|
||||||
|
|
||||||
public static Object deSerializeObjectFromString(String s) throws IOException, ClassNotFoundException {
|
public static Object deSerializeObjectFromString(String s) throws IOException, ClassNotFoundException {
|
||||||
|
@ -13,6 +13,7 @@ public class SerializationUtility {
|
|||||||
AppleProduct macBook = new AppleProduct();
|
AppleProduct macBook = new AppleProduct();
|
||||||
macBook.headphonePort = "headphonePort2020";
|
macBook.headphonePort = "headphonePort2020";
|
||||||
macBook.thunderboltPort = "thunderboltPort2020";
|
macBook.thunderboltPort = "thunderboltPort2020";
|
||||||
|
macBook.lightningPort = "lightningPort2020";
|
||||||
|
|
||||||
String serializedObj = serializeObjectToString(macBook);
|
String serializedObj = serializeObjectToString(macBook);
|
||||||
System.out.println("Serialized AppleProduct object to string:");
|
System.out.println("Serialized AppleProduct object to string:");
|
||||||
|
@ -12,7 +12,7 @@ import org.junit.Test;
|
|||||||
|
|
||||||
public class DeserializationUnitTest {
|
public class DeserializationUnitTest {
|
||||||
|
|
||||||
private static final String serializedObj = "rO0ABXNyACljb20uYmFlbGR1bmcuZGVzZXJpYWxpemF0aW9uLkFwcGxlUHJvZHVjdAAAAAAAEtaHAgADTAANaGVhZHBob25lUG9ydHQAEkxqYXZhL2xhbmcvU3RyaW5nO0wADmxpZ2h0ZW5pbmdQb3J0cQB+AAFMAA90aHVuZGVyYm9sdFBvcnRxAH4AAXhwdAARaGVhZHBob25lUG9ydDIwMjBwdAATdGh1bmRlcmJvbHRQb3J0MjAyMA==";
|
private static final String serializedObj = "rO0ABXNyACljb20uYmFlbGR1bmcuZGVzZXJpYWxpemF0aW9uLkFwcGxlUHJvZHVjdAAAAAAAdMuxAgADTAANaGVhZHBob25lUG9ydHQAEkxqYXZhL2xhbmcvU3RyaW5nO0wADWxpZ2h0bmluZ1BvcnRxAH4AAUwAD3RodW5kZXJib2x0UG9ydHEAfgABeHB0ABFoZWFkcGhvbmVQb3J0MjAyMHQAEWxpZ2h0bmluZ1BvcnQyMDIwdAATdGh1bmRlcmJvbHRQb3J0MjAyMA";
|
||||||
|
|
||||||
private static long userDefinedSerialVersionUID = 1234567L;
|
private static long userDefinedSerialVersionUID = 1234567L;
|
||||||
|
|
||||||
@ -25,20 +25,22 @@ public class DeserializationUnitTest {
|
|||||||
public void testDeserializeObj_compatible() throws IOException, ClassNotFoundException {
|
public void testDeserializeObj_compatible() throws IOException, ClassNotFoundException {
|
||||||
|
|
||||||
assertEquals(userDefinedSerialVersionUID, AppleProduct.getSerialVersionUID());
|
assertEquals(userDefinedSerialVersionUID, AppleProduct.getSerialVersionUID());
|
||||||
|
|
||||||
AppleProduct macBook = new AppleProduct();
|
AppleProduct macBook = new AppleProduct();
|
||||||
macBook.headphonePort = "headphonePort2020";
|
macBook.headphonePort = "headphonePort2020";
|
||||||
macBook.thunderboltPort = "thunderboltPort2020";
|
macBook.thunderboltPort = "thunderboltPort2020";
|
||||||
|
macBook.lightningPort = "lightningPort2020";
|
||||||
|
|
||||||
// serializes the "AppleProduct" object
|
// serializes the "AppleProduct" object
|
||||||
String serializedProduct = SerializationUtility.serializeObjectToString(macBook);
|
String serializedProduct = SerializationUtility.serializeObjectToString(macBook);
|
||||||
|
|
||||||
// deserializes the "AppleProduct" object
|
// deserializes the "AppleProduct" object
|
||||||
AppleProduct deserializedProduct = (AppleProduct) DeserializationUtility.deSerializeObjectFromString(serializedProduct);
|
AppleProduct deserializedProduct = (AppleProduct) DeserializationUtility.deSerializeObjectFromString(serializedProduct);
|
||||||
|
|
||||||
assertTrue(deserializedProduct.headphonePort.equalsIgnoreCase(macBook.headphonePort));
|
assertTrue(deserializedProduct.headphonePort.equalsIgnoreCase(macBook.headphonePort));
|
||||||
assertTrue(deserializedProduct.thunderboltPort.equalsIgnoreCase(macBook.thunderboltPort));
|
assertTrue(deserializedProduct.thunderboltPort.equalsIgnoreCase(macBook.thunderboltPort));
|
||||||
|
assertTrue(deserializedProduct.lightningPort.equalsIgnoreCase(macBook.lightningPort));
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -59,7 +61,6 @@ public class DeserializationUnitTest {
|
|||||||
public void testDeserializeObj_incompatible() throws ClassNotFoundException, IOException {
|
public void testDeserializeObj_incompatible() throws ClassNotFoundException, IOException {
|
||||||
|
|
||||||
assertNotEquals(userDefinedSerialVersionUID, AppleProduct.getSerialVersionUID());
|
assertNotEquals(userDefinedSerialVersionUID, AppleProduct.getSerialVersionUID());
|
||||||
|
|
||||||
// attempts to deserialize the "AppleProduct" object
|
// attempts to deserialize the "AppleProduct" object
|
||||||
DeserializationUtility.deSerializeObjectFromString(serializedObj);
|
DeserializationUtility.deSerializeObjectFromString(serializedObj);
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user