From b1ffd97b42eecbc1da5ec79775f2cc94cbeedc09 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kjetil=20=C3=98rbekk?= Date: Tue, 28 Feb 2012 11:59:33 +0100 Subject: Add missing class ComponentBundle. ComponentBundle is used to send a Component in a Message. --- .../com/orbekk/same/android/ComponentBundle.java | 46 ++++++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 same-android/src/main/java/com/orbekk/same/android/ComponentBundle.java (limited to 'same-android/src/main/java') diff --git a/same-android/src/main/java/com/orbekk/same/android/ComponentBundle.java b/same-android/src/main/java/com/orbekk/same/android/ComponentBundle.java new file mode 100644 index 0000000..43402d5 --- /dev/null +++ b/same-android/src/main/java/com/orbekk/same/android/ComponentBundle.java @@ -0,0 +1,46 @@ +package com.orbekk.same.android; + +import android.os.Bundle; + +import com.orbekk.same.State; + +public class ComponentBundle { + private State.Component component; + private Bundle bundle; + + public ComponentBundle(State.Component component) { + this.component = component; + } + + public ComponentBundle(Bundle bundle) { + this.bundle = bundle; + } + + private void makeBundle() { + if (bundle == null) { + bundle = new Bundle(); + bundle.putString("identifier", component.getName()); + bundle.putString("data", component.getData()); + bundle.putLong("revision", component.getRevision()); + } + } + + private void makeComponent() { + if (component == null) { + String name = bundle.getString("identifier"); + String data = bundle.getString("data"); + long revision = bundle.getLong("revision"); + component = new State.Component(name, revision, data); + } + } + + public Bundle getBundle() { + makeBundle(); + return bundle; + } + + public State.Component getComponent() { + makeComponent(); + return component; + } +} -- cgit v1.2.3