Esempio n. 1
0
        public virtual IList <SchematronContext> GetAllSchematronContexts(VersionNumber version)
        {
            MessageSet messageSet = FindMessageSet(version);

            if (messageSet != null)
            {
                return(messageSet.SchematronContexts);
            }
            return(CollUtils.EmptyList <SchematronContext>());
        }
Esempio n. 2
0
 /// <summary>Get all children of a particular tag name as a list.</summary>
 /// <remarks>Get all children of a particular tag name as a list.</remarks>
 /// <param name="node">- the parent node</param>
 /// <param name="tagName">- the tag name to select</param>
 /// <returns>- the list of nodes</returns>
 public static IList <XmlNode> GetChildNodes(XmlNode node, string tagName)
 {
     if (node.NodeType != System.Xml.XmlNodeType.Element)
     {
         return(CollUtils.EmptyList <XmlNode>());
     }
     else
     {
         return(AsList(((XmlElement)node).GetElementsByTagName(tagName)));
     }
 }
Esempio n. 3
0
 /// <summary>
 /// Get all the message parts for a particular version.
 /// </summary>
 ///
 /// <param name="version">- the version</param>
 /// <returns>- the message parts</returns>
 public virtual ICollection <MessagePart> GetAllMessageParts(VersionNumber version)
 {
     foreach (MessageDefinitionService service in this.services)
     {
         ICollection <MessagePart> allMessageParts = service.GetAllMessageParts(version);
         if (allMessageParts != null && !allMessageParts.IsEmpty())
         {
             return(allMessageParts);
         }
     }
     return(CollUtils.EmptyList <MessagePart>());
 }
Esempio n. 4
0
        static TsDateFormats()
        {
            IDictionary <StandardDataType, IList <string> > map = new Dictionary <StandardDataType, IList <string> >();

            map[StandardDataType.TS_FULLDATETIME] = Arrays.AsList("yyyyMMddHHmmss.SSS0ZZZZZ", "yyyyMMddHHmmss.SSSZZZZZ", "yyyyMMddHHmmssZZZZZ"
                                                                  );
            map[StandardDataType.TS_FULLDATEPARTTIME] = Arrays.AsList("yyyyMMddHHmmss.SSS0ZZZZZ", "yyyyMMddHHmmss.SSS0", "yyyyMMddHHmmss.SSSZZZZZ"
                                                                      , "yyyyMMddHHmmss.SSS", "yyyyMMddHHmmssZZZZZ", "yyyyMMddHHmmss", "yyyyMMddHHmmZZZZZ", "yyyyMMddHHmm", "yyyyMMddHHZZZZZ",
                                                                      "yyyyMMddHH", "yyyyMMddZZZZZ", "yyyyMMdd");
            // not allowed if non-CeRx
            // not allowed if non-CeRx
            // not allowed if non-CeRx
            // not allowed if non-CeRx
            // not allowed if non-CeRx
            map[StandardDataType.TS_FULLDATE] = Arrays.AsList("yyyyMMdd");
            // this is an abstract type and these formats are only used after issuing a warning (there should be a specializationType); only defined in MR2009
            map[StandardDataType.TS_FULLDATEWITHTIME] = Arrays.AsList("yyyyMMddHHmmss.SSS0ZZZZZ", "yyyyMMddHHmmss.SSSZZZZZ", "yyyyMMddHHmmssZZZZZ"
                                                                      , "yyyyMMdd");
            map[StandardDataType.TS_DATE]     = Arrays.AsList("yyyyMMdd", "yyyyMM", "yyyy");
            map[StandardDataType.TS_DATETIME] = Arrays.AsList("yyyyMMddHHmmss.SSS0ZZZZZ", "yyyyMMddHHmmss.SSS0", "yyyyMMddHHmmss.SSSZZZZZ"
                                                              , "yyyyMMddHHmmss.SSS", "yyyyMMddHHmmssZZZZZ", "yyyyMMddHHmmss", "yyyyMMddHHmmZZZZZ", "yyyyMMddHHmm", "yyyyMMddHHZZZZZ",
                                                              "yyyyMMddHH", "yyyyMMddZZZZZ", "yyyyMMdd", "yyyyMMZZZZZ", "yyyyMM", "yyyyZZZZZ", "yyyy");
            // not allowed if non-CeRx
            // not allowed if non-CeRx
            // not allowed if non-CeRx
            // not allowed if non-CeRx
            // not allowed if non-CeRx
            map[StandardDataType.TS] = map.SafeGet(StandardDataType.TS_DATETIME);
            formats = Ca.Infoway.Messagebuilder.CollUtils.CreateUnmodifiableDictionary(map);
            datetimeFormatsRequiringWarning = Arrays.AsList("yyyyMMddHHmmss.SSS0", "yyyyMMddHHmmss.SSS", "yyyyMMddHHmmss", "yyyyMMddHHmm"
                                                            , "yyyyMMddHH");
            IDictionary <string, string> _expandedFormats = new Dictionary <string, string>();

            _expandedFormats["yyyyMMddHHmmss.SSSZZZZZ"] = "yyyyMMddHHmmss.SSS0ZZZZZ";
            _expandedFormats["yyyyMMddHHmmss.SSS"]      = "yyyyMMddHHmmss.SSS0";
            expandedFormats = Ca.Infoway.Messagebuilder.CollUtils.CreateUnmodifiableDictionary(_expandedFormats);
            // some older versions have slightly different rules for allowable time formats
            IDictionary <StandardDataType, IList <string> > exceptionMapMR2007 = new Dictionary <StandardDataType, IList <string> >();

            exceptionMapMR2007[StandardDataType.TS_FULLDATEWITHTIME] = CollUtils.EmptyList <string>();
            IDictionary <StandardDataType, IList <string> > exceptionMapCeRx = new Dictionary <StandardDataType, IList <string> >();

            exceptionMapCeRx[StandardDataType.TS_FULLDATEWITHTIME] = CollUtils.EmptyList <string>();
            exceptionMapCeRx[StandardDataType.TS_FULLDATETIME]     = Arrays.AsList("yyyyMMddHHmmss");
            exceptionMapCeRx[StandardDataType.TS_DATETIME]         = Arrays.AsList("yyyyMMddHHmmss.SSS0", "yyyyMMddHHmmss.SSS", "yyyyMMddHHmmss"
                                                                                   , "yyyyMMddHHmm", "yyyyMMddHH", "yyyyMMdd", "yyyyMM", "yyyy");
            IDictionary <Hl7BaseVersion, IDictionary <StandardDataType, IList <string> > > versionMap = new Dictionary <Hl7BaseVersion, IDictionary
                                                                                                                        <StandardDataType, IList <string> > >();

            versionMap[Hl7BaseVersion.MR2007] = Ca.Infoway.Messagebuilder.CollUtils.CreateUnmodifiableDictionary(exceptionMapMR2007);
            versionMap[Hl7BaseVersion.CERX]   = Ca.Infoway.Messagebuilder.CollUtils.CreateUnmodifiableDictionary(exceptionMapCeRx);
            versionFormatExceptions           = Ca.Infoway.Messagebuilder.CollUtils.CreateUnmodifiableDictionary(versionMap);
        }
Esempio n. 5
0
        private IList <string> GetMapping(BeanProperty property)
        {
            Hl7XmlMappingAttribute annotation = property.GetAnnotation <Hl7XmlMappingAttribute>();

            if (annotation != null)
            {
                return(Arrays.AsList(annotation.Value));
            }
            else
            {
                return(CollUtils.EmptyList <string>());
            }
        }
Esempio n. 6
0
 public virtual IList <BaseRelationshipBridge> GetRelationshipBridges()
 {
     return(CollUtils.EmptyList <BaseRelationshipBridge>());
 }
Esempio n. 7
0
        private PartBridge CreateNullPartBridge(Relationship relationship, Interaction interaction)
        {
            RelationshipSorter sorter             = RelationshipSorter.Create(relationship.Name, null);
            MessagePartHolder  currentMessagePart = GetMessagePart(interaction, relationship, null);

            if (currentMessagePart != null)
            {
                return(CreatePartBridge(sorter, interaction, currentMessagePart, new BridgeContext(), true));
            }
            else
            {
                return(new PartBridgeImpl(relationship.Name, null, relationship.Type, CollUtils.EmptyList <BaseRelationshipBridge>(), false
                                          , true));
            }
        }
Esempio n. 8
0
 /// <summary>Create a XML start element.</summary>
 /// <remarks>Create a XML start element.</remarks>
 /// <param name="name">- the tag name.</param>
 /// <param name="nameSpace">- namespace of the tag name</param>
 /// <param name="indentLevel">- the indent level</param>
 /// <param name="close">- indicates whether or not close the element.</param>
 /// <param name="lineBreak">- indicates whether or not to include a line break</param>
 /// <returns>- the formatted result.</returns>
 public static string CreateStartElement(string name, string nameSpace, int indentLevel, bool close, bool lineBreak)
 {
     return(CreateStartElement(name, nameSpace, CollUtils.EmptyList <KeyValuePair <string, string> >(), indentLevel, close, lineBreak
                               ));
 }
Esempio n. 9
0
 public virtual ICollection <PartBridge> GetAssociationValues()
 {
     return(IsEmpty() ? CollUtils.EmptyList <PartBridge>() : this.parts);
 }
Esempio n. 10
0
 private static IList <Mapping> From(Hl7XmlMappingAttribute mapping, Hl7MapByPartTypeAttribute[] exceptions)
 {
     return(mapping == null?CollUtils.EmptyList <Mapping>() : From(Arrays.AsList(mapping.Value), exceptions));
 }