001package org.kuali.common.util.xml.jaxb.adapter; 002 003import javax.xml.bind.annotation.adapters.XmlAdapter; 004 005public abstract class OmitBooleanAdapter extends XmlAdapter<String, Boolean> { 006 007 public OmitBooleanAdapter(boolean omitValue) { 008 this.omitValue = omitValue; 009 } 010 011 private final Boolean omitValue; 012 013 @Override 014 public final String marshal(Boolean value) { 015 if (omitValue.equals(value)) { 016 return null; 017 } else { 018 return value.toString(); 019 } 020 } 021 022 @Override 023 public final Boolean unmarshal(String value) { 024 if (value == null) { 025 return omitValue; 026 } else { 027 return Boolean.parseBoolean(value); 028 } 029 } 030 031 public final boolean getOmitValue() { 032 return omitValue; 033 } 034 035}