openlark_platform/app_engine/apaas/v1/application/object/
mod.rs1pub mod oql_query;
4pub mod record;
5pub mod search;
6
7pub use oql_query::OqlQueryRequestBuilder;
8pub use record::batch_create as record_batch_create;
9pub use record::batch_delete as record_batch_delete;
10pub use record::batch_query as record_batch_query;
11pub use record::batch_update as record_batch_update;
12pub use record::create as record_create;
13pub use record::delete as record_delete;
14pub use record::patch as record_patch;
15pub use record::query as record_query;
16pub use search::RecordSearchRequestBuilder;
17
18use crate::PlatformConfig;
19use std::sync::Arc;
20
21#[derive(Debug, Clone)]
23pub struct ObjectService {
24 config: Arc<PlatformConfig>,
25 namespace: String,
26 object_api_name: String,
27}
28
29impl ObjectService {
30 pub fn new(
32 config: Arc<PlatformConfig>,
33 namespace: impl Into<String>,
34 object_api_name: impl Into<String>,
35 ) -> Self {
36 Self {
37 config,
38 namespace: namespace.into(),
39 object_api_name: object_api_name.into(),
40 }
41 }
42 pub fn record(&self) -> record::RecordService {
44 record::RecordService::new(
45 self.config.as_ref().clone(),
46 self.namespace.clone(),
47 self.object_api_name.clone(),
48 )
49 }
50 pub fn search(&self, search: impl Into<String>) -> search::RecordSearchRequestBuilder {
52 search::RecordSearchRequestBuilder::new(
53 self.config.as_ref().clone(),
54 self.namespace.clone(),
55 search,
56 )
57 }
58 pub fn oql_query(&self, oql: impl Into<String>) -> oql_query::OqlQueryRequestBuilder {
60 oql_query::OqlQueryRequestBuilder::new(
61 self.config.as_ref().clone(),
62 self.namespace.clone(),
63 oql,
64 )
65 }
66}