39#ifndef DXCPP_BINDINGS_DXAPPLET_H
40#define DXCPP_BINDINGS_DXAPPLET_H
42#include "../bindings.h"
47 dx::JSON describe_(
const std::string &s)
const{
return appletDescribe(dxid_,s);}
48 void addTypes_(
const std::string &UNUSED(s))
const{
throw DXNotImplementedError(
"Wrapper for /applet-xxxx/addTypes does not exist");}
49 void removeTypes_(
const std::string &UNUSED(s))
const{
throw DXNotImplementedError(
"Wrapper for /applet-xxxx/removeTypes does not exist");}
50 dx::JSON getDetails_(
const std::string &s)
const{
return appletGetDetails(dxid_,s);}
51 void setDetails_(
const std::string &UNUSED(s))
const{
throw DXNotImplementedError(
"Wrapper for /applet-xxxx/setDetails does not exist");}
52 void setVisibility_(
const std::string &UNUSED(s))
const{
throw DXNotImplementedError(
"Wrapper for /applet-xxxx/setVisibility does not exist");}
53 void rename_(
const std::string &s)
const{appletRename(dxid_,s);}
54 void setProperties_(
const std::string &s)
const{appletSetProperties(dxid_,s);}
55 void addTags_(
const std::string &s)
const{appletAddTags(dxid_,s);}
56 void removeTags_(
const std::string &s)
const{appletRemoveTags(dxid_,s);}
57 void close_(
const std::string &UNUSED(s))
const{
throw DXNotImplementedError(
"Wrapper for /applet-xxxx/close does not exist");}
58 dx::JSON listProjects_(
const std::string &s)
const{
return appletListProjects(dxid_,s);}
73 DXApplet(
const char *dxid,
const char *proj=NULL) {
74 setIDs(std::string(dxid), (proj == NULL) ? config::CURRENT_PROJECT() : std::string(proj));
84 const std::string &proj=config::CURRENT_PROJECT()) {
setIDs(dxid, proj); }
105 void create(dx::JSON inp);
124 DXJob run(
const dx::JSON &applet_input,
125 const std::string &output_folder=
"/",
126 const std::vector<std::string> &depends_on=std::vector<std::string>(),
127 const dx::JSON &instance_type=dx::JSON(dx::JSON_NULL),
128 const std::string &project_context=config::CURRENT_PROJECT()
140 const std::string &dest_folder=
"/")
const;
149 dx::JSON
get()
const {
return appletGet(dxid_); }
void create(dx::JSON inp)
Definition dxapplet.cc:23
DXJob run(const dx::JSON &applet_input, const std::string &output_folder="/", const std::vector< std::string > &depends_on=std::vector< std::string >(), const dx::JSON &instance_type=dx::JSON(dx::JSON_NULL), const std::string &project_context=config::CURRENT_PROJECT()) const
Definition dxapplet.cc:29
dx::JSON get() const
Definition dxapplet.h:149
DXApplet(const dx::JSON &dxlink)
Definition dxapplet.h:93
DXApplet(const std::string &dxid, const std::string &proj=config::CURRENT_PROJECT())
Definition dxapplet.h:83
DXApplet clone(const std::string &dest_proj_id, const std::string &dest_folder="/") const
Definition dxapplet.cc:45
DXApplet(const char *dxid, const char *proj=NULL)
Definition dxapplet.h:73
The abstract base class for all data object remote handlers.
Definition bindings.h:42
virtual void setIDs(const std::string &dxid, const std::string &proj="default")
Definition bindings.cc:24
The instantiation of an applet or app.
Definition dxjob.h:41
Definition exceptions.h:125
An executable object that can be published for others to discover.
Definition api.cc:7