pub struct BundlrMethod {
pub client: Arc<Bundlr<SolanaSigner>>,
pub sugar_tag: Tag,
/* private fields */
}Fields§
§client: Arc<Bundlr<SolanaSigner>>§sugar_tag: TagImplementations§
source§impl BundlrMethod
impl BundlrMethod
pub async fn new(
sugar_config: &SugarConfig,
_config_data: &ConfigData
) -> Result<Self>
sourcepub async fn get_bundlr_balance(
http_client: &HttpClient,
address: &str,
node: &str
) -> Result<u64>
pub async fn get_bundlr_balance(
http_client: &HttpClient,
address: &str,
node: &str
) -> Result<u64>
Return the Bundlr balance.
Trait Implementations§
source§impl ParallelUploader for BundlrMethod
impl ParallelUploader for BundlrMethod
source§fn upload_asset(
&self,
asset_info: AssetInfo
) -> JoinHandle<Result<(String, String)>>
fn upload_asset(
&self,
asset_info: AssetInfo
) -> JoinHandle<Result<(String, String)>>
Returns a
JoinHandle to the task responsible to upload the specified asset. Read moresource§fn parallel_limit(&self) -> usize
fn parallel_limit(&self) -> usize
Return the number of concurrent uploads allowed. The default implementation returns
the value PARALLEL_LIMIT.
source§impl Prepare for BundlrMethod
impl Prepare for BundlrMethod
source§fn prepare<'life0, 'life1, 'life2, 'life3, 'async_trait>(
&'life0 self,
sugar_config: &'life1 SugarConfig,
assets: &'life2 HashMap<isize, AssetPair>,
asset_indices: Vec<(DataType, &'life3 [isize])>
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
fn prepare<'life0, 'life1, 'life2, 'life3, 'async_trait>(
&'life0 self,
sugar_config: &'life1 SugarConfig,
assets: &'life2 HashMap<isize, AssetPair>,
asset_indices: Vec<(DataType, &'life3 [isize])>
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
Prepare the upload of the specified media/metadata files, e.g.: Read more
Auto Trait Implementations§
impl !RefUnwindSafe for BundlrMethod
impl Send for BundlrMethod
impl Sync for BundlrMethod
impl Unpin for BundlrMethod
impl !UnwindSafe for BundlrMethod
Blanket Implementations§
§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
source§impl<T> Instrument for T
impl<T> Instrument for T
source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
§impl<T> Pointable for T
impl<T> Pointable for T
source§impl<T> Uploader for Twhere
T: ParallelUploader,
impl<T> Uploader for Twhere
T: ParallelUploader,
source§fn upload<'life0, 'life1, 'life2, 'life3, 'life4, 'async_trait>(
&'life0 self,
_sugar_config: &'life1 SugarConfig,
cache: &'life2 mut Cache,
data_type: DataType,
assets: &'life3 mut Vec<AssetInfo, Global>,
progress: &'life4 ProgressBar,
interrupted: Arc<AtomicBool>
) -> Pin<Box<dyn Future<Output = Result<Vec<UploadError, Global>, Error>> + Send + 'async_trait, Global>>where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
'life4: 'async_trait,
T: 'async_trait,
fn upload<'life0, 'life1, 'life2, 'life3, 'life4, 'async_trait>(
&'life0 self,
_sugar_config: &'life1 SugarConfig,
cache: &'life2 mut Cache,
data_type: DataType,
assets: &'life3 mut Vec<AssetInfo, Global>,
progress: &'life4 ProgressBar,
interrupted: Arc<AtomicBool>
) -> Pin<Box<dyn Future<Output = Result<Vec<UploadError, Global>, Error>> + Send + 'async_trait, Global>>where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
'life4: 'async_trait,
T: 'async_trait,
Uploads assets in parallel. It creates [self::parallel_limit()] tasks at a time to avoid
reaching the limit of concurrent files open and it syncs the cache file at every self.parallel_limit() / 2
step.