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