Skip to content

Instantly share code, notes, and snippets.

@mohsenoid
Last active March 17, 2018 12:36
Show Gist options
  • Save mohsenoid/10de245236f3b5979bd7f081da77c0d9 to your computer and use it in GitHub Desktop.
Save mohsenoid/10de245236f3b5979bd7f081da77c0d9 to your computer and use it in GitHub Desktop.
// building PhoneNumber objects
val phoneHome = AddressBookProtos.Person.PhoneNumber.newBuilder()
.setNumber("+49123456")
.setType(AddressBookProtos.Person.PhoneType.HOME)
.build()
val phoneMobile = AddressBookProtos.Person.PhoneNumber.newBuilder()
.setNumber("+49654321")
.setType(AddressBookProtos.Person.PhoneType.MOBILE)
.build()
// building a Person object using phone data
val person = AddressBookProtos.Person.newBuilder()
.setId(1)
.setName("Mohsen")
.setEmail("[email protected]")
.addAllPhones(listOf(phoneHome, phoneMobile))
.build()
// building an AddressBook object using person data
val addressBook = AddressBookProtos.AddressBook.newBuilder()
.addAllPeople(listOf(person))
.build()
// finally this is how you get serialized ByteArray
val bytes = addressBook.toByteArray()
// You can deserialize AddressBook bytes
val myAddressBook = AddressBookProtos.AddressBook.parseFrom(bytes)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment