📄 simpledampercontroller.java
字号:
package net.sf.dz.device.model.impl;import java.io.IOException;import java.util.HashMap;import java.util.Iterator;import java.util.Map;import org.freehold.jukebox.logger.LogAware;import org.freehold.jukebox.logger.LogChannel;import net.sf.dz.device.actuator.Damper;import net.sf.dz.device.model.DamperController;import net.sf.dz.device.model.Thermostat;public class SimpleDamperController extends LogAware implements DamperController { public static final LogChannel CH_SDC = new LogChannel("DamperCtl/Simple"); private Map ts2damper = new HashMap(); private Map damper2ts = new HashMap(); public void put(Thermostat ts, Damper damper) { ts2damper.put(ts, damper); damper2ts.put(damper, ts); } public Damper getDamper(Thermostat ts) { return (Damper)ts2damper.get(ts); } public Thermostat getThermostat(Damper damper) { return (Thermostat)damper2ts.get(damper); } public void set(Damper damper, double position) { try { damper.set(position); } catch ( IOException ioex ) { // VT: FIXME: Actually, it's more complicated than this. The // zone whose damper has failed to respond must be alerted, if // all the dampers have failed, then it's quite possible that // the HVAC unit must be stopped (especially if the previous // damper state was 'closed' or 'unknown'), and so on. complain(LOG_ALERT, CH_SDC, "Failure to set damper:", ioex); } } public Iterator iterator() { return ts2damper.keySet().iterator(); }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -