@Override
    public List<LeafNodeObject> chunking() throws TikaException {
        int maxChunkSize = 1 * 1024 * 1024;
        java.util.List<LeafNodeObject> list = new ArrayList<>();
        LeafNodeObject.IntermediateNodeObjectBuilder builder =
                new LeafNodeObject.IntermediateNodeObjectBuilder();
        int chunkStart = 0;

        if (this.fileContent.length <= maxChunkSize) {
            list.add(builder.Build(this.fileContent, this.getSignature(this.fileContent)));

            return list;
        }

        while (chunkStart < this.fileContent.length) {
            int chunkLength = chunkStart + maxChunkSize >= this.fileContent.length ?
                    this.fileContent.length - chunkStart : maxChunkSize;
            byte[] temp = Arrays.copyOfRange(this.fileContent, chunkStart, chunkLength);
            list.add(builder.Build(temp, this.getSignature(temp)));
            chunkStart += chunkLength;
        }

        return list;
    }
This method is used to chunk the file data.

@return A list of LeafNodeObjectData.
tika-parsers/tika-parsers-standard/tika-parsers-standard-modules/tika-parser-microsoft-module/src/main/java/org/apache/tika/parser/microsoft/onenote/fsshttpb/streamobj/chunking/SimpleChunking.java