summaryrefslogtreecommitdiff
path: root/client/.metadata/.plugins/org.eclipse.core.resources/.history/18/00a5e084260d00131a9bb9bc5a5e6171
blob: 270ce209d99e5dd5c609658eff70fab9df4dd062 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
package com.macaroon.piztor;

import java.util.HashMap;

import android.annotation.SuppressLint;
import android.content.Intent;

@SuppressLint("UseSparseArrays")
public class AppMgr {
	// Status
	public enum  ActivityStatus{
		create, start, resume, restart, stop, pause, destroy
	} 
	static ActivityStatus status;
	static PiztorAct nowAct;

	//Event
	
	final static int hasToken = 1;
	
	
	static HashMap<Class<?>, HashMap<Integer, Class<?>>> mp;

	static void setStatus(ActivityStatus st) {
		status = st;
	}

	static void trigger(int event) {
		
		Intent i = new Intent();
		i.setClass(nowAct, mp.get(nowAct.getClass()).get(event));
		nowAct.startActivity(i);
	}

	static void add(Class<?> a, Integer event, Class<?> b) {
		if (mp.containsKey(a))
			mp.get(a).put(event, b);
		else {
			HashMap<Integer, Class<?>> h = new HashMap<Integer, Class<?>>();
			h.put(event, b);
			mp.put(a, h);
		}
	}

	static void addTransition(Class<?> a, int i, Class<?> b) {
		if (mp.containsKey(a)) {
			HashMap<Integer, Class<?>> h = mp.get(a);
			h.put(i, b);
			mp.put(a, h);
		} else {
			HashMap<Integer, Class<?>> h = new HashMap<Integer, Class<?>>();
			h.put(i, b);
			mp.put(a, h);
		}
	}

	static void addStatus(Class<?> a) {
		mp.put(a, new HashMap<Integer, Class<?>>());
	}

	static void init() {
		mp = new HashMap<Class<?>, HashMap<Integer, Class<?>>>();
		addStatus(InitAct.class);
		addStatus(Login.class);
		addTransition(InitAct.class, hasToken, Login.class);
	}

}