hdfs_sys/
hdfs_2_9.rs

1//! hdfs 2.9 adds hdfsStreamBuilder related APIs.
2//!
3//! - New struct: hdfsStreamBuilder
4//! - hdfsStreamBuilder
5//! - hdfsStreamBuilderFree
6//! - hdfsStreamBuilderSetBufferSize
7//! - hdfsStreamBuilderSetReplication
8//! - hdfsStreamBuilderSetDefaultBlockSize
9//! - hdfsStreamBuilderBuild
10
11use std::os::raw::*;
12
13use crate::{hdfsFS, hdfsFile};
14
15#[repr(C)]
16#[derive(Debug, Copy, Clone)]
17pub struct hdfsStreamBuilder {
18    _unused: [u8; 0],
19}
20
21extern "C" {
22    pub fn hdfsStreamBuilderAlloc(
23        fs: hdfsFS,
24        path: *const c_char,
25        flags: c_int,
26    ) -> *mut hdfsStreamBuilder;
27    pub fn hdfsStreamBuilderFree(bld: *mut hdfsStreamBuilder);
28    pub fn hdfsStreamBuilderSetBufferSize(bld: *mut hdfsStreamBuilder, bufferSize: i32) -> c_int;
29    pub fn hdfsStreamBuilderSetReplication(bld: *mut hdfsStreamBuilder, replication: i16) -> c_int;
30    pub fn hdfsStreamBuilderSetDefaultBlockSize(
31        bld: *mut hdfsStreamBuilder,
32        defaultBlockSize: i64,
33    ) -> c_int;
34    pub fn hdfsStreamBuilderBuild(bld: *mut hdfsStreamBuilder) -> hdfsFile;
35}