From f4e3e383071b6947d56794d9af5e9e6438aa3235 Mon Sep 17 00:00:00 2001 From: jsdelfino Date: Mon, 15 Sep 2008 00:17:09 +0000 Subject: Temporarily renamed sca-android branch to pull a recent revision of trunk into sca-android. git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@695316 13f79535-47bb-0310-9956-ffa450edef68 --- .../tuscany/sca/android/ContextRegistry.java | 55 ++++++++++++++++++++++ 1 file changed, 55 insertions(+) create mode 100644 branches/sca-android-r643746/modules/android-jdk-classes/src/org/apache/tuscany/sca/android/ContextRegistry.java (limited to 'branches/sca-android-r643746/modules/android-jdk-classes/src/org/apache/tuscany/sca/android/ContextRegistry.java') diff --git a/branches/sca-android-r643746/modules/android-jdk-classes/src/org/apache/tuscany/sca/android/ContextRegistry.java b/branches/sca-android-r643746/modules/android-jdk-classes/src/org/apache/tuscany/sca/android/ContextRegistry.java new file mode 100644 index 0000000000..312c0059db --- /dev/null +++ b/branches/sca-android-r643746/modules/android-jdk-classes/src/org/apache/tuscany/sca/android/ContextRegistry.java @@ -0,0 +1,55 @@ +package org.apache.tuscany.sca.android; + +import java.util.HashSet; +import java.util.Hashtable; + +import android.content.Context; + +public class ContextRegistry { + + private static Hashtable> contexts = new Hashtable>(); + + public static void registerContext(Context context) { + String packageName = context.getPackageName(); + HashSet packContexts = contexts.get(packageName); + + if (packContexts == null) { + packContexts = new HashSet(); + contexts.put(packageName, packContexts); + + } + + packContexts.add(context); + + } + + public static void unregisterContext(Context context) { + String packageName = context.getPackageName(); + HashSet packContexts = contexts.get(packageName); + + if (packContexts != null) { + packContexts.remove(context); + + if (packContexts.isEmpty()) { + contexts.remove(packageName); + } + + } + + } + + public static Context[] getContexts(String packageName) { + HashSet packageContexts = contexts.get(packageName); + + if (packageContexts == null) { + return new Context[0]; + } + + Context[] ret = new Context[packageContexts.size()]; + packageContexts.toArray(ret); + + return ret; + + } + +} -- cgit v1.2.3