Exemple #1
0
        private int GetRelationIndex(XWPFRelation relation)
        {
            List <POIXMLDocumentPart> relations = doc.GetRelations();
            int i = 1;

            for (IEnumerator <POIXMLDocumentPart> it = relations.GetEnumerator(); it.MoveNext();)
            {
                POIXMLDocumentPart item = it.Current;
                if (item.GetPackageRelationship().RelationshipType.Equals(relation.Relation))
                {
                    i++;
                }
            }
            return(i);
        }
Exemple #2
0
 /**
  * Recursively Traverse a OOXML document and assert that same logical parts have the same physical instances
  */
 private void Traverse(POIXMLDocumentPart part, Dictionary <String, POIXMLDocumentPart> context)
 {
     context[part.GetPackageRelationship().TargetUri.ToString()] = part;
     foreach (POIXMLDocumentPart p in part.GetRelations())
     {
         String uri = p.GetPackageRelationship().TargetUri.ToString();
         if (!context.ContainsKey(uri))
         {
             Traverse(p, context);
         }
         else
         {
             POIXMLDocumentPart prev = context[uri];
             Assert.AreSame(prev, p, "Duplicate POIXMLDocumentPart instance for targetURI=" + uri);
         }
     }
 }
Exemple #3
0
        /**
         * Recursively Traverse a OOXML document and assert that same logical parts have the same physical instances
         */
        private void Traverse(POIXMLDocumentPart part, Dictionary <String, POIXMLDocumentPart> context)
        {
            Assert.AreEqual(part.GetPackageRelationship().TargetUri.ToString(), part.GetPackagePart().PartName.Name);

            context[part.GetPackagePart().PartName.Name] = part;
            foreach (POIXMLDocumentPart p in part.GetRelations())
            {
                Assert.IsNotNull(p.ToString());
                String uri = p.GetPackagePart().PartName.URI.ToString();
                Assert.AreEqual(uri, p.GetPackageRelationship().TargetUri.ToString());

                if (!context.ContainsKey(uri))
                {
                    Traverse(p, context);
                }
                else
                {
                    POIXMLDocumentPart prev = context[uri];
                    Assert.AreSame(prev, p, "Duplicate POIXMLDocumentPart instance for targetURI=" + uri);
                }
            }
        }