예제 #1
0
        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);
        }
예제 #2
0
 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));
 }
예제 #3
0
 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)));
 }