[][src]Struct harperdb::Harper

pub struct Harper { /* fields omitted */ }

Implementations

impl Harper[src]

pub fn new(harper_config: HarperConfig) -> Self[src]

Create a HaperDB client

Arguments

  • harper_config (required) - HarperConfig

Examples

let config: HarperConfig = HarperConfig {
    url: "http://0.0.0.0:9925/",
    username: "HDB_ADMIN",
    password: "password",
    schema: "shop",
};

let harper_client = new(config);

pub async fn create_schema<'_>(
    &'_ self,
    options: SchemaOption
) -> Result<Response, Error>
[src]

Create Schema:

Arguments

  • options (required) - SchemaOption

Examples

let schema_option: SchemaOption = SchemaOption {
    schema: "newschema",
};
let result = harper_client.create_schema(schema_option).await?;

pub async fn drop_schema<'_>(
    &'_ self,
    options: SchemaOption
) -> Result<Response, Error>
[src]

Drop Schema:

Arguments

  • options (required) - SchemaOption

Examples

let schema_option: SchemaOption = SchemaOption {
    schema: "newschema",
};
let result = harper_client.drop_schema(schema_option).await?;

pub async fn describe_schema<'_>(
    &'_ self,
    options: SchemaOption
) -> Result<Response, Error>
[src]

Describe Schema:

Arguments

  • options (required) - SchemaOption

Examples

let schema_option: SchemaOption = SchemaOption {
    schema: "newschema",
};
let result = harper_client.describe_schema(schema_option).await?;

pub async fn describe_all<'_>(&'_ self) -> Result<Response, Error>[src]

Describe All

Examples

let result = harper_client.describe_all().await?;

pub async fn create_table<'_>(
    &'_ self,
    options: CreateTableOptions
) -> Result<Response, Error>
[src]

Create Table

Arguments

  • options (required) - CreateTableOptions

Examples

let create_table_option: CreateTableOptions = CreateTableOptions {
    hash_attribute: "id",
    table: "test_table",
    schema: "describe_schema_test",
};
let result = harper_client.create_table(create_table_option).await?;

pub async fn describe_table<'_>(
    &'_ self,
    options: TableOptions
) -> Result<Response, Error>
[src]

Describe Table

Arguments

  • options (required) - TableOptions

Examples

let table_option: TableOptions = TableOptions {
    table: "tablename",
    schema: "newschema",
};
let result = harper_client.Describe Table(table_option).await?;

pub async fn drop_table<'_>(
    &'_ self,
    options: TableOptions
) -> Result<Response, Error>
[src]

Drop Table Attribute

Arguments

  • options (required) - TableOptions

Examples

let schema_option: SchemaOption = SchemaOption {
    schema: "newschema",
};
let result = harper_client.create_schema(schema_option).await?;

pub async fn drop_attribute<'_>(
    &'_ self,
    options: AttributeDropOptions
) -> Result<Response, Error>
[src]

Drop Table Attribute

Arguments

  • options (required) - AttributeDropOptions

Examples

let attribute_drop_option: AttributeDropOptions = AttributeDropOptions {
    table: "drop_attribute_table_test",
    schema: "testing",
    attribute: "breed",
};
let result = harper_client.drop_attribute(attribute_drop_option).await?;

pub async fn query<'_>(
    &'_ self,
    sql_query: &'static str
) -> Result<Response, Error>
[src]

Create Schema:

Arguments

  • sql (required) - &str

Examples

let result = harper_client.query("SELECT * FROM testing.crud_table_test limit 2",).await?;

pub async fn insert<'_>(
    &'_ self,
    options: QueryOptions
) -> Result<Response, Error>
[src]

Insert Records

Arguments

  • options (required) - QueryOptions

Examples

let insert_option: QueryOptions = QueryOptions {
    table: "crud_table_test",
    schema: "testing",
    records:json!([{
        "id": "record1234",
        "name": "Incredible Metal Chair",
        "modelNumber": 356625,
        "unitPrice": "$1700.00",
        "color": "#961",
        "material": "Rubber",
        "isDiscontinued": true,
        "image": "http://lorempixel.com/640/480/nature"
    }]),
};
let result = harper_client.insert(insert_option).await?;

pub async fn update<'_>(
    &'_ self,
    options: QueryOptions
) -> Result<Response, Error>
[src]

Update Records

Arguments

  • options (required) - QueryOptions

Examples

let update_option: QueryOptions = QueryOptions {
    table: "crud_table_test",
    schema: "testing",
    records:json!([{            
        "id": "record1234",           
        "color": "red",            
    }]),
};
let result = harper_client.update(update_option).await?;

pub async fn delete<'_>(
    &'_ self,
    options: RowDeleteOptions
) -> Result<Response, Error>
[src]

Delete Records:

Arguments

  • options (required) - RowDeleteOptions

Examples

let delete_option: RowDeleteOptions = RowDeleteOptions {
    table: "crud_table_test",
    schema: "testing",
    hash_values:vec!["record1234"] ,//json!([]),
};
let result = harper_client.delete(delete_option).await?;

pub async fn search_by_hash<'_>(
    &'_ self,
    options: HashSearchOptions
) -> Result<Response, Error>
[src]

Search By Hash:

Arguments

  • options (required) - HashSearchOptions

Examples

let search_option: HashSearchOptions = HashSearchOptions {
    table: "crud_table_test",
    schema: "testing",
    hash_values:vec![
        "updaterecord1234",
    ],
    get_attributes:vec!["name"],
};

let result = harper_client.search_by_hash(search_option).await?;

pub async fn search_by_value<'_>(
    &'_ self,
    options: ValueSearchOptions
) -> Result<Response, Error>
[src]

Search By Value:

Arguments

  • options (required) - ValueSearchOptions

Examples

let search_option: ValueSearchOptions = ValueSearchOptions {
    table: "crud_table_test",
    schema: "testing",
    search_attribute: "name",
    search_value:"Tom*",
    get_attributes:vec!["name"],
};

let result = harper_client.search_by_value(search_option).await?;

pub async fn csv_data_load<'_>(
    &'_ self,
    options: DataLoadOptions
) -> Result<Response, Error>
[src]

CSV Data Load

Arguments

  • options (required) - DataLoadOptions

Examples

let csv_data_load_option: DataLoadOptions = DataLoadOptions {
    table: "crud_table_test",
    schema: "testing",
    action: "insert",
    data: "id,name,section,country,image\n1,ENGLISH POINTER,British and Irish Pointers and Setters,GREAT BRITAIN,http://www.fci.be/Nomenclature/Illustrations/001g07.jpg\n2,ENGLISH SETTER,British and Irish Pointers and Setters,GREAT BRITAIN,http://www.fci.be/Nomenclature/Illustrations/002g07.jpg\n3,KERRY BLUE TERRIER,Large and medium sized Terriers,IRELAND,\n",        
};

let result = harper_client.csv_data_load(csv_data_load_option).await?

pub async fn csv_url_load<'_>(
    &'_ self,
    options: UrlLoadOptions
) -> Result<Response, Error>
[src]

CSV URL Load:

Arguments

  • options (required) -

Examples

let csv_data_load_option: FileLoadOptions = FileLoadOptions {
    table: "crud_table_test",
    schema: "testing",
    action: "insert",
    file_path: "~/Codes/harperdb-sdk-rust/breeds.csv"
};

let result = harper_client.csv_file_load(csv_data_load_option).await?;

pub async fn csv_file_load<'_>(
    &'_ self,
    options: FileLoadOptions
) -> Result<Response, Error>
[src]

CSV URL Load:

Arguments

  • options (required) - FileLoadOptions

Examples

let csv_data_load_option: FileLoadOptions = FileLoadOptions {
    table: "crud_table_test",
    schema: "testing",
    action: "insert",
   file_path: "~/Codes/harperdb-sdk-rust/breeds.csv"
};

let result = harper_client.csv_file_load(csv_data_load_option).await?;

pub async fn list_users<'_>(&'_ self) -> Result<Response, Error>[src]

List Users:

Examples

let result = harper_client.list_users().await?;

pub async fn user_info<'_>(&'_ self) -> Result<Response, Error>[src]

User Info

Examples

let result = harper_client.user_info().await?;

pub async fn add_user<'_>(
    &'_ self,
    options: UserAddOptions
) -> Result<Response, Error>
[src]

Add User

Arguments

  • options (required) - UserAddOptions

Examples

let user_option: UserAddOptions = UserAddOptions {
    role: "c0a90733-1fc3-48df-a16b-d7c3011b63b2",
    username: "john",
    password: "secret",
    active: true
};
let result = harper_client.add_user(user_option).await?;

pub async fn alter_user<'_>(
    &'_ self,
    options: UserAlterOptions
) -> Result<Response, Error>
[src]

Alter User

Arguments

  • options (required) - UserAlterOptions

Examples

let user_option: UserAlterOptions = UserAlterOptions {
    role: Some("c0a90733-1fc3-48df-a16b-d7c3011b63b2"),
    username: "john",
    password: Some("secret2"),
    active: true
};
let result = harper_client.alter_user(user_option).await?;

pub async fn drop_user<'_>(
    &'_ self,
    options: UserDropOptions
) -> Result<Response, Error>
[src]

Drop User

Arguments

  • options (required) - UserDropOptions

Examples

let user_option: UserDropOptions = UserDropOptions {
    username: "john",
};
let result = harper_client.drop_user(user_option).await?;

pub async fn list_roles<'_>(&'_ self) -> Result<Response, Error>[src]

List Roles

Examples

let result = harper_client.list_roles().await?;;

pub async fn add_role<'_>(
    &'_ self,
    options: AddRoleOptions
) -> Result<Response, Error>
[src]

Add Role

Arguments

  • options (required) - AddRoleOptions

Examples

let role_option: AddRoleOptions = AddRoleOptions {
    role: "develope3r",
    super_user: false,
    permission:json!({
        "testing":{
            "tables": {
              "crud_table_test": {
                  "read":true,
                  "insert":false,
                  "update":false,
                  "delete":false,
                  "attribute_restrictions":[
                     {
                        "attribute_name": "color",
                        "read":false,
                        "insert":false,
                        "update":false,
                        "delete":false
                     }
                  ]
               }
            }
         }
    }),

let result = harper_client.add_role(role_option).await?;

pub async fn alter_role<'_>(
    &'_ self,
    options: AlterRoleOptions
) -> Result<Response, Error>
[src]

Alter Role

Arguments

  • options (required) - AlterRoleOptions

Examples

let role_option: AlterRoleOptions = AlterRoleOptions {
    id: "3c5cc923-5351-4f81-91e3-01a03448e18f",
    role: "cluster_user",
    super_user: false,
    permission:json!({
        "shop":{
            "tables": {
              "product": {
                  "read":false,
                  "insert":true,
                  "update":true,
                  "delete":true,
                  "attribute_restrictions":[
                     {
                        "attribute_name": "color",
                        "read":false,
                        "insert":true,
                        "update":true,
                        "delete":false
                     }
                  ]
               }
            }
         }
    }),
};
let result = harper_client.alter_role(role_option).await?;

pub async fn drop_role<'_>(
    &'_ self,
    options: DropRoleOptions
) -> Result<Response, Error>
[src]

Drop Role

Arguments

  • options (required) - DropRoleOptions

Examples

let role_option: DropRoleOptions = DropRoleOptions {
    id: "33d285dc-1ddb-4700-b5bd-300a67faa247",
};
let result = harper_client.drop_role(role_option).await?;

pub async fn system_information<'_>(
    &'_ self,
    options: SystemInformationOptions
) -> Result<Response, Error>
[src]

System Information

Arguments

  • options (required) - SystemInformationOptions

Examples

let system_information_option: SystemInformationOptions = SystemInformationOptions {
    attributes : Some(vec!["cpu"])
    // attributes :None
};
let result = harper_client.system_information(system_information_option).await?;

pub async fn delete_files_before<'_>(
    &'_ self,
    options: DeleteFilesBeforeOptions
) -> Result<Response, Error>
[src]

Delete Files Before

Arguments

  • options (required) - DeleteFilesBeforeOptions

Examples

let option: DeleteFilesBeforeOptions = DeleteFilesBeforeOptions {
    date: "2018-07-10",
    schema: "dev",
    table: "breed",
};
let result = harper_client.delete_files_before(option).await?;

pub async fn export_to_s3<'_>(
    &'_ self,
    options: S3DetailsOptions
) -> Result<Response, Error>
[src]

Export To S3

Arguments

  • options (required) - S3DetailsOptions

Examples

let option: S3DetailsOptions = S3DetailsOptions {
    format: "json",
    s3:S3Auth{
        aws_access_key_id:"YOUR_KEY",
        aws_secret_access_key:"YOUR_SECRET_KEY",
        bucket:"BUCKET",
        key:"FILENAME"
     }, 
    search_operation: SearchOperation{
        "operation": "sql",
        "sql": "SELECT * FROM dev.dog"
      }
};
let result = harper_client.export_to_local(option).await?;

pub async fn export_to_local<'_>(
    &'_ self,
    options: ExportLocalOptions
) -> Result<Response, Error>
[src]

Export Local

Arguments

  • options (required) -ExportLocalOptions

Examples

let option: ExportLocalOptions = ExportLocalOptions {
    format: "json",
    s3:"/data/", 
    search_operation: SearchOperation{
        "operation": "sql",
        "sql": "SELECT * FROM dev.dog"
      }
};
let result = harper_client.export_to_local(option).await?;

pub async fn read_logs<'_>(
    &'_ self,
    options: LogsOptions
) -> Result<Response, Error>
[src]

Read Log

Arguments

  • options (required) - LogsOptions

Examples

let read_logs_option: LogsOptions = LogsOptions {
    limit : Some(2),
    start : Some(0),
    from : None,
    until : None,
    order : None,    
};
let result = harper_client.read_logs(read_logs_option).await?;

pub async fn get_job<'_>(
    &'_ self,
    options: GetJobOptions
) -> Result<Response, Error>
[src]

Get Job

Arguments

  • options (required) - GetJobOptions

Examples

let get_job_option: GetJobOptions = GetJobOptions {
    id : "d8b70ed4-a62a-45ef-bf86-15508c4ba10a",
};

let result = harper_client.get_job(get_job_option).await?;

pub async fn search_jobs_by_start_date<'_>(
    &'_ self,
    options: JobsByDateOptions
) -> Result<Response, Error>
[src]

Search Jobs By Start Date

Arguments

  • options (required) - JobsByDateOptions

Examples

let search_jobs_by_start_date_option: JobsByDateOptions = JobsByDateOptions {
    from_date : "2019-01-01",
    to_date : "2020-12-30",
};

let result = harper_client.search_jobs_by_start_date(search_jobs_by_start_date_option).await?;

pub async fn registration_info<'_>(&'_ self) -> Result<Response, Error>[src]

Registration Info

Examples

let result = harper_client.registration_info().await?;

pub async fn get_fingerprint<'_>(&'_ self) -> Result<Response, Error>[src]

Get Fingerprint:

Examples

let result = harper_client.get_fingerprint().await?;

pub async fn set_license<'_>(
    &'_ self,
    options: LicenseOptions
) -> Result<Response, Error>
[src]

Set License

Arguments

  • options (required) - LicenseOptions

Examples

let option: LicenseOptions = LicenseOptions {
    key: "<your-license-key>",
    company: "<your-company>",
};
let result = harper_client.set_license(option).await?;

pub async fn add_node<'_>(
    &'_ self,
    options: AddNodeOptions
) -> Result<Response, Error>
[src]

Add Node

Arguments

  • options (required) - AddNodeOptions

Examples

let option: AddNodeOptions = AddNodeOptions {
    name: "node2",
    port: 9925,
    host: "192.168.100.100",
};
let result = harper_client.add_node(option).await?;

pub async fn update_node<'_>(
    &'_ self,
    options: UpdateNodeOptions
) -> Result<Response, Error>
[src]

Update Node

Arguments

  • options (required) - UpdateNodeOptions

Examples

let option: UpdateNodeOptions = UpdateNodeOptions {
    name: "node2",
    port: 9925,
    host: "192.168.100.100",
};
let result = harper_client.update_node(option).await?;

pub async fn remove_node<'_>(
    &'_ self,
    options: RemoveNodeOptions
) -> Result<Response, Error>
[src]

Remove Node

Arguments

  • options (required) - RemoveNodeOptions

Examples

let option: RemoveNodeOptions = RemoveNodeOptions {
    name: "nodename",
};
let result = remove_node.remove_node(option).await?;

pub async fn cluster_status<'_>(&'_ self) -> Result<Response, Error>[src]

Cluster Status

Examples

let result = harper_client.cluster_status().await.unwrap();
let data:Struct = result.json().await?;

Auto Trait Implementations

impl !RefUnwindSafe for Harper

impl Send for Harper

impl Sync for Harper

impl Unpin for Harper

impl !UnwindSafe for Harper

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T> Instrument for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.