/* Copyright 2012, UCAR/Unidata. See the LICENSE file for more information. */ package dap4.dap4shared; /** * Define possible checksum modes: * DMR => compute checksums for DMR requests only * DAP => compute checksums for Note requests only * ALL => compute checksums for both kinds of requests */ public enum ChecksumMode { DMR, DAP, ALL; static public boolean enabled(RequestMode rqm, ChecksumMode ckm) { switch (ckm) { case DMR: return rqm == RequestMode.DMR; case DAP: return rqm == RequestMode.DAP; case ALL: return rqm == RequestMode.DMR || rqm == RequestMode.DAP; } return false; } static public ChecksumMode modeFor(String s) { if(s == null || s.length() == 0) return DAP; for(ChecksumMode mode: values()) { if(mode.name().equalsIgnoreCase(s)) return mode; } return null; } }