Status writeEdgesNum()

in maven-projects/java/src/main/java/org/apache/graphar/writers/EdgeChunkWriter.java [98:487]


    Status writeEdgesNum(
            @FFITypeAlias(GAR_ID_TYPE) long vertexChunkIndex,
            @FFITypeAlias(GAR_ID_TYPE) long count,
            @CXXValue ValidateLevel validateLevel);

    /**
     * Write the number of vertices into the file.
     *
     * @param count The number of vertices.
     * @param validateLevel The validate level for this operation, which is the writer's validate
     *     level by default.
     * @return Status: ok or error.
     */
    @FFINameAlias("WriteVerticesNum")
    @CXXValue
    Status writeVerticesNum(
            @FFITypeAlias(GAR_ID_TYPE) long count, @CXXValue ValidateLevel validateLevel);

    /**
     * Write the number of vertices into the file.
     *
     * @param count The number of vertices.
     * @return Status: ok or error.
     */
    @FFINameAlias("WriteVerticesNum")
    @CXXValue
    Status writeVerticesNum(@FFITypeAlias(GAR_ID_TYPE) long count);

    /**
     * Copy a file as a offset chunk.
     *
     * @param fileName The file to copy.
     * @param vertexChunkIndex The index of the vertex chunk.
     * @param validateLevel The validate level for this operation, which is the writer's validate
     *     level by default.
     * @return Status: ok or error.
     */
    @FFINameAlias("WriteOffsetChunk")
    @CXXValue
    Status writeOffsetChunk(
            @CXXReference StdString fileName,
            @FFITypeAlias(GAR_ID_TYPE) long vertexChunkIndex,
            @CXXValue ValidateLevel validateLevel);

    /**
     * Copy a file as an adj list chunk.
     *
     * @param fileName The file to copy.
     * @param vertexChunkIndex The index of the vertex chunk.
     * @param chunkIndex The index of the edge chunk inside the vertex chunk.
     * @param validateLevel The validate level for this operation, which is the writer's validate
     *     level by default.
     * @return Status: ok or error.
     */
    @FFINameAlias("WriteAdjListChunk")
    @CXXValue
    Status writeAdjListChunk(
            @CXXReference StdString fileName,
            @FFITypeAlias(GAR_ID_TYPE) long vertexChunkIndex,
            @FFITypeAlias(GAR_ID_TYPE) long chunkIndex,
            @CXXValue ValidateLevel validateLevel);

    /**
     * Copy a file as an edge property group chunk.
     *
     * @param fileName The file to copy.
     * @param propertyGroup The property group to write.
     * @param vertexChunkIndex The index of the vertex chunk.
     * @param chunkIndex The index of the edge chunk inside the vertex chunk.
     * @param validateLevel The validate level for this operation, which is the writer's validate
     *     level by default.
     * @return Status: ok or error.
     */
    @FFINameAlias("WritePropertyChunk")
    @CXXValue
    Status writePropertyChunk(
            @CXXReference StdString fileName,
            @CXXReference PropertyGroup propertyGroup,
            @FFITypeAlias(GAR_ID_TYPE) long vertexChunkIndex,
            @FFITypeAlias(GAR_ID_TYPE) long chunkIndex,
            @CXXValue ValidateLevel validateLevel);

    /**
     * Validate and write the offset chunk for a vertex chunk.
     *
     * @param inputTable The table containing data.
     * @param vertexChunkIndex The index of the vertex chunk.
     * @param validateLevel The validate level for this operation, which is the writer's validate
     *     level by default.
     * @return Status: ok or error.
     */
    @FFINameAlias("WriteOffsetChunk")
    @CXXValue
    Status writeOffsetChunk(
            @CXXReference StdSharedPtr<ArrowTable> inputTable,
            @FFITypeAlias(GAR_ID_TYPE) long vertexChunkIndex,
            @CXXValue ValidateLevel validateLevel);

    /**
     * Validate and write the adj list chunk for an edge chunk.
     *
     * @param inputTable The table containing data.
     * @param vertexChunkIndex The index of the vertex chunk.
     * @param chunkIndex The index of the edge chunk inside the vertex chunk.
     * @param validateLevel The validate level for this operation, which is the writer's validate
     *     level by default.
     * @return Status: ok or error.
     */
    @FFINameAlias("WriteAdjListChunk")
    @CXXValue
    Status writeAdjListChunk(
            @CXXReference StdSharedPtr<ArrowTable> inputTable,
            @FFITypeAlias(GAR_ID_TYPE) long vertexChunkIndex,
            @FFITypeAlias(GAR_ID_TYPE) long chunkIndex,
            @CXXValue ValidateLevel validateLevel);

    /**
     * Validate and write a single edge property group for an edge chunk.
     *
     * @param inputTable The table containing data.
     * @param propertyGroup The property group to write.
     * @param vertexChunkIndex The index of the vertex chunk.
     * @param chunkIndex The index of the edge chunk inside the vertex chunk.
     * @param validateLevel The validate level for this operation, which is the writer's validate
     *     level by default.
     * @return Status: ok or error.
     */
    @FFINameAlias("WritePropertyChunk")
    @CXXValue
    Status writePropertyChunk(
            @CXXReference StdSharedPtr<ArrowTable> inputTable,
            @CXXReference PropertyGroup propertyGroup,
            @FFITypeAlias(GAR_ID_TYPE) long vertexChunkIndex,
            @FFITypeAlias(GAR_ID_TYPE) long chunkIndex,
            @CXXValue ValidateLevel validateLevel);

    /**
     * Write all edge property groups for an edge chunk.
     *
     * @param inputTable The table containing data.
     * @param vertexChunkIndex The index of the vertex chunk.
     * @param chunkIndex The index of the edge chunk inside the vertex chunk.
     * @param validateLevel The validate level for this operation, which is the writer's validate
     *     level by default.
     * @return Status: ok or error.
     */
    @FFINameAlias("WritePropertyChunk")
    @CXXValue
    Status writePropertyChunk(
            @CXXReference StdSharedPtr<ArrowTable> inputTable,
            @FFITypeAlias(GAR_ID_TYPE) long vertexChunkIndex,
            @FFITypeAlias(GAR_ID_TYPE) long chunkIndex,
            @CXXValue ValidateLevel validateLevel);

    /**
     * Write the adj list and all property groups for an edge chunk.
     *
     * @param inputTable The table containing data.
     * @param vertexChunkIndex The index of the vertex chunk.
     * @param chunkIndex The index of the edge chunk inside the vertex chunk.
     * @param validateLevel The validate level for this operation, which is the writer's validate
     *     level by default.
     * @return Status: ok or error.
     */
    @FFINameAlias("WriteChunk")
    @CXXValue
    Status writeChunk(
            @CXXReference StdSharedPtr<ArrowTable> inputTable,
            @FFITypeAlias(GAR_ID_TYPE) long vertexChunkIndex,
            @FFITypeAlias(GAR_ID_TYPE) long chunkIndex,
            @CXXValue ValidateLevel validateLevel);

    /**
     * Write the adj list chunks for the edges of a vertex chunk.
     *
     * @param inputTable The table containing data.
     * @param vertexChunkIndex The index of the vertex chunk.
     * @param startChunkIndex The start index of the edge chunks inside the vertex chunk.
     * @param validateLevel The validate level for this operation, which is the writer's validate
     *     level by default.
     * @return Status: ok or error.
     */
    @FFINameAlias("WriteAdjListTable")
    @CXXValue
    Status writeAdjListTable(
            @CXXReference StdSharedPtr<ArrowTable> inputTable,
            @FFITypeAlias(GAR_ID_TYPE) long vertexChunkIndex,
            @FFITypeAlias(GAR_ID_TYPE) long startChunkIndex,
            @CXXValue ValidateLevel validateLevel);

    /**
     * Write chunks of a single property group for the edges of a vertex chunk.
     *
     * @param inputTable The table containing data.
     * @param propertyGroup The property group to write.
     * @param vertexChunkIndex The index of the vertex chunk.
     * @param startChunkIndex The start index of the edge chunks inside the vertex chunk.
     * @param validateLevel The validate level for this operation, which is the writer's validate
     *     level by default.
     * @return Status: ok or error.
     */
    @FFINameAlias("WritePropertyTable")
    @CXXValue
    Status writePropertyTable(
            @CXXReference StdSharedPtr<ArrowTable> inputTable,
            @CXXReference PropertyGroup propertyGroup,
            @FFITypeAlias(GAR_ID_TYPE) long vertexChunkIndex,
            @FFITypeAlias(GAR_ID_TYPE) long startChunkIndex,
            @CXXValue ValidateLevel validateLevel);

    /**
     * Write chunks of all property groups for the edges of a vertex chunk.
     *
     * @param inputTable The table containing data.
     * @param vertexChunkIndex The index of the vertex chunk.
     * @param startChunkIndex The start index of the edge chunks inside the vertex chunk.
     * @param validateLevel The validate level for this operation, which is the writer's validate
     *     level by default.
     * @return Status: ok or error.
     */
    @FFINameAlias("WritePropertyTable")
    @CXXValue
    Status writePropertyTable(
            @CXXReference StdSharedPtr<ArrowTable> inputTable,
            @FFITypeAlias(GAR_ID_TYPE) long vertexChunkIndex,
            @FFITypeAlias(GAR_ID_TYPE) long startChunkIndex,
            @CXXValue ValidateLevel validateLevel);

    /**
     * Write chunks of the adj list and all property groups for the edges of a vertex chunk.
     *
     * @param inputTable The table containing data.
     * @param vertexChunkIndex The index of the vertex chunk.
     * @param startChunkIndex The start index of the edge chunks inside the vertex chunk.
     * @param validateLevel The validate level for this operation, which is the writer's validate
     *     level by default.
     * @return Status: ok or error.
     */
    @FFINameAlias("WriteTable")
    @CXXValue
    Status writeTable(
            @CXXReference StdSharedPtr<ArrowTable> inputTable,
            @FFITypeAlias(GAR_ID_TYPE) long vertexChunkIndex,
            @FFITypeAlias(GAR_ID_TYPE) long startChunkIndex,
            @CXXValue ValidateLevel validateLevel);

    /**
     * Sort the edges, and write the adj list chunks for the edges of a vertex chunk.
     *
     * @param inputTable The table containing data.
     * @param vertexChunkIndex The index of the vertex chunk.
     * @param startChunkIndex The start index of the edge chunks inside the vertex chunk.
     * @param validateLevel The validate level for this operation, which is the writer's validate
     *     level by default.
     * @return Status: ok or error.
     */
    @FFINameAlias("SortAndWriteAdjListTable")
    @CXXValue
    Status sortAndWriteAdjListTable(
            @CXXReference StdSharedPtr<ArrowTable> inputTable,
            @FFITypeAlias(GAR_ID_TYPE) long vertexChunkIndex,
            @FFITypeAlias(GAR_ID_TYPE) long startChunkIndex,
            @CXXValue ValidateLevel validateLevel);

    /**
     * Sort the edges, and write the adj list chunks for the edges of a vertex chunk.
     *
     * @param inputTable The table containing data.
     * @param vertexChunkIndex The index of the vertex chunk.
     * @param startChunkIndex The start index of the edge chunks inside the vertex chunk.
     * @return Status: ok or error.
     */
    @FFINameAlias("SortAndWriteAdjListTable")
    @CXXValue
    Status sortAndWriteAdjListTable(
            @CXXReference StdSharedPtr<ArrowTable> inputTable,
            @FFITypeAlias(GAR_ID_TYPE) long vertexChunkIndex,
            @FFITypeAlias(GAR_ID_TYPE) long startChunkIndex);

    /**
     * Sort the edges, and write chunks of a single property group for the edges of a vertex chunk.
     *
     * @param inputTable The table containing data.
     * @param propertyGroup The property group to write.
     * @param vertexChunkIndex The index of the vertex chunk.
     * @param startChunkIndex The start index of the edge chunks inside the vertex chunk.
     * @param validateLevel The validate level for this operation, which is the writer's validate
     *     level by default.
     * @return Status: ok or error.
     */
    @FFINameAlias("SortAndWritePropertyTable")
    @CXXValue
    Status sortAndWritePropertyTable(
            @CXXReference StdSharedPtr<ArrowTable> inputTable,
            @CXXReference PropertyGroup propertyGroup,
            @FFITypeAlias(GAR_ID_TYPE) long vertexChunkIndex,
            @FFITypeAlias(GAR_ID_TYPE) long startChunkIndex,
            @CXXValue ValidateLevel validateLevel);

    /**
     * Sort the edges, and write chunks of all property groups for the edges of a vertex chunk.
     *
     * @param inputTable The table containing data.
     * @param vertexChunkIndex The index of the vertex chunk.
     * @param startChunkIndex The start index of the edge chunks inside the vertex chunk.
     * @param validateLevel The validate level for this operation, which is the writer's validate
     *     level by default.
     * @return Status: ok or error.
     */
    @FFINameAlias("SortAndWritePropertyTable")
    @CXXValue
    Status sortAndWritePropertyTable(
            @CXXReference StdSharedPtr<ArrowTable> inputTable,
            @FFITypeAlias(GAR_ID_TYPE) long vertexChunkIndex,
            @FFITypeAlias(GAR_ID_TYPE) long startChunkIndex,
            @CXXValue ValidateLevel validateLevel);

    /**
     * Sort the edges, and write chunks of the adj list and all property groups for the edges of a
     * vertex chunk.
     *
     * @param inputTable The table containing data.
     * @param vertexChunkIndex The index of the vertex chunk.
     * @param startChunkIndex The start index of the edge chunks inside the vertex chunk.
     * @param validateLevel The validate level for this operation, which is the writer's validate
     *     level by default.
     * @return Status: ok or error.
     */
    @FFINameAlias("SortAndWriteTable")
    @CXXValue
    Status sortAndWriteTable(
            @CXXReference StdSharedPtr<ArrowTable> inputTable,
            @FFITypeAlias(GAR_ID_TYPE) long vertexChunkIndex,
            @FFITypeAlias(GAR_ID_TYPE) long startChunkIndex,
            @CXXValue ValidateLevel validateLevel);

    /**
     * Sort the edges, and write chunks of the adj list and all property groups for the edges of a
     * vertex chunk.
     *
     * @param inputTable The table containing data.
     * @param vertexChunkIndex The index of the vertex chunk.
     * @param startChunkIndex The start index of the edge chunks inside the vertex chunk.
     * @return Status: ok or error.
     */
    @FFINameAlias("SortAndWriteTable")
    @CXXValue
    Status sortAndWriteTable(
            @CXXReference StdSharedPtr<ArrowTable> inputTable,
            @FFITypeAlias(GAR_ID_TYPE) long vertexChunkIndex,
            @FFITypeAlias(GAR_ID_TYPE) long startChunkIndex);

    @FFIFactory
    interface Factory {
        /**
         * Initialize the EdgeChunkWriter.
         *
         * @param edgeInfo The edge info that describes the edge type.
         * @param prefix The absolute prefix.
         * @param adjListType The adj list type for the edges.
         * @param validateLevel The global validate level for the writer, with no validate by
         *     default. It could be ValidateLevel::no_validate, ValidateLevel::weak_validate or
         *     ValidateLevel::strong_validate, but could not be ValidateLevel::default_validate.
         */
        EdgeChunkWriter create(
                @CXXReference EdgeInfo edgeInfo,
                @CXXReference StdString prefix,
                @CXXValue AdjListType adjListType,
                @CXXValue ValidateLevel validateLevel);

        /**
         * Initialize the EdgeChunkWriter.
         *
         * @param edgeInfo The edge info that describes the edge type.
         * @param prefix The absolute prefix.
         * @param adjListType The adj list type for the edges.
         */
        EdgeChunkWriter create(
                @CXXReference EdgeInfo edgeInfo,
                @CXXReference StdString prefix,
                @CXXValue AdjListType adjListType);

        /**
         * Initialize the EdgeChunkWriter.
         *
         * @param edgeInfo The edge info that describes the edge type.
         * @param prefix The absolute prefix.
         */
        EdgeChunkWriter create(@CXXReference EdgeInfo edgeInfo, @CXXReference StdString prefix);
    }