Class MapInfo


  • public class MapInfo
    extends POIXMLDocumentPart
    This class implements the Custom XML Mapping Part (Open Office XML Part 1: chapter 12.3.6) An instance of this part type contains a schema for an XML file, and information on the behavior that is used when allowing this custom XML schema to be mapped into the spreadsheet.
    Author:
    Roberto Manicardi
    • Constructor Detail

      • MapInfo

        public MapInfo()
      • MapInfo

        public MapInfo​(PackagePart part)
                throws java.io.IOException
        Throws:
        java.io.IOException
        Since:
        POI 3.14-Beta1
    • Method Detail

      • readFrom

        public void readFrom​(java.io.InputStream is)
                      throws java.io.IOException
        Throws:
        java.io.IOException
      • getWorkbook

        public XSSFWorkbook getWorkbook()
        Returns the parent XSSFWorkbook
        Returns:
        the parent XSSFWorkbook
      • getCTMapInfo

        public org.openxmlformats.schemas.spreadsheetml.x2006.main.CTMapInfo getCTMapInfo()
        Returns:
        the internal data object
      • getCTSchemaById

        public org.openxmlformats.schemas.spreadsheetml.x2006.main.CTSchema getCTSchemaById​(java.lang.String schemaId)
        Gets the
        Parameters:
        schemaId - the schema ID
        Returns:
        CTSchema by it's ID
      • getXSSFMapById

        public XSSFMap getXSSFMapById​(int id)
      • getXSSFMapByName

        public XSSFMap getXSSFMapByName​(java.lang.String name)
      • getAllXSSFMaps

        public java.util.Collection<XSSFMap> getAllXSSFMaps()
        Returns:
        all the mappings configured in this document
      • writeTo

        protected void writeTo​(java.io.OutputStream out)
                        throws java.io.IOException
        Throws:
        java.io.IOException
      • commit

        protected void commit()
                       throws java.io.IOException
        Description copied from class: POIXMLDocumentPart
        Save the content in the underlying package part. Default implementation is empty meaning that the package part is left unmodified.

        Sub-classes should override and add logic to marshal the "model" into Ooxml4J.

        For example, the code saving a generic XML entry may look as follows:

         protected void commit() throws IOException {
           PackagePart part = getPackagePart();
           OutputStream out = part.getOutputStream();
           XmlObject bean = getXmlBean(); //the "model" which holds changes in memory
           bean.save(out, DEFAULT_XML_OPTIONS);
           out.close();
         }
         
        Overrides:
        commit in class POIXMLDocumentPart
        Throws:
        java.io.IOException - a subclass may throw an IOException if the changes can't be committed