Mercurial > dive4elements > river
view flys-artifacts/src/main/java/de/intevation/flys/artifacts/services/meta/StackFrames.java @ 411:6ab62e5b05b5
Enabled the WINFO artifact to choose between W and Q mode in the adapted wq panel of the discharge longitudinal section computation.
flys-artifacts/trunk@1872 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Ingo Weinzierl <ingo.weinzierl@intevation.de> |
---|---|
date | Tue, 10 May 2011 07:40:06 +0000 |
parents | fc3cf0ef777e |
children | 7c018f466d6d |
line wrap: on
line source
package de.intevation.flys.artifacts.services.meta; import java.util.Map; import java.util.List; import java.util.HashMap; import java.util.ArrayList; public class StackFrames { protected List<Map<String, Object>> frames; public StackFrames() { frames = new ArrayList<Map<String, Object>>(); } public void enter() { frames.add(new HashMap<String, Object>()); } public void leave() { frames.remove(frames.size()-1); } public void put(String [] keys, Object [] values) { Map<String, Object> top = frames.get(frames.size()-1); for (int i = 0; i < keys.length; ++i) { top.put(keys[i], values[i]); } } public Object get(String key) { return get(key, null); } public Object get(String key, Object def) { for (int i = frames.size()-1; i >= 0; --i) { Map<String, Object> frame = frames.get(i); if (frame.containsKey(key)) { return frame.get(key); } } return def; } } // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :