private ICollection <Ca.Infoway.Messagebuilder.Domainvalue.PostalAddressUse> ParseAddressUses(string nameUseAttribute, XmlNode node, XmlToModelResult xmlToModelResult) { ICollection <Ca.Infoway.Messagebuilder.Domainvalue.PostalAddressUse> uses = CollUtils.SynchronizedSet(new LinkedSet <Ca.Infoway.Messagebuilder.Domainvalue.PostalAddressUse >()); if (nameUseAttribute != null) { StringTokenizer tokenizer = new StringTokenizer(nameUseAttribute); while (tokenizer.HasMoreElements()) { string token = tokenizer.NextToken(); Ca.Infoway.Messagebuilder.Domainvalue.PostalAddressUse postalAddressUse = CodeResolverRegistry.Lookup <Ca.Infoway.Messagebuilder.Domainvalue.PostalAddressUse >(token); if (postalAddressUse == null) { // error if a use is not found RecordError("PostalAddressUse '" + token + "' is not valid", (XmlElement)node, xmlToModelResult); } else { uses.Add(postalAddressUse); } } } return(uses); }
private bool IsConfOrDir(Ca.Infoway.Messagebuilder.Domainvalue.PostalAddressUse use) { return(Ca.Infoway.Messagebuilder.Domainvalue.Basic.X_BasicPostalAddressUse.CONFIDENTIAL.CodeValue.Equals(use.CodeValue) || Ca.Infoway.Messagebuilder.Domainvalue.Basic.X_BasicPostalAddressUse.DIRECT.CodeValue.Equals(use.CodeValue)); }
public virtual bool IsAllowableUse(string dataType, Ca.Infoway.Messagebuilder.Domainvalue.PostalAddressUse use, Hl7BaseVersion baseVersion) { return(!StandardDataType.AD_SEARCH.Type.Equals(dataType) && use != null && use.CodeValue != null && ALLOWABLE_ADDRESS_USES .Contains(use.CodeValue) && !(IsCeRx(baseVersion) && IsConfOrDir(use))); }