22 #ifndef DXCPP_BINDINGS_H 23 #define DXCPP_BINDINGS_H 46 void waitOnState(
const std::string &state=
"closed",
47 const int timeout=std::numeric_limits<int>::max())
const;
49 virtual JSON describe_(
const std::string &input_params)
const = 0;
50 virtual void addTypes_(
const std::string &input_params)
const = 0;
51 virtual void removeTypes_(
const std::string &input_params)
const = 0;
52 virtual JSON getDetails_(
const std::string &input_params)
const = 0;
53 virtual void setDetails_(
const std::string &input_params)
const = 0;
54 virtual void setVisibility_(
const std::string &input_params)
const = 0;
55 virtual void rename_(
const std::string &input_params)
const = 0;
56 virtual void setProperties_(
const std::string &input_params)
const = 0;
57 virtual void addTags_(
const std::string &input_params)
const = 0;
58 virtual void removeTags_(
const std::string &input_params)
const = 0;
59 virtual void close_(
const std::string &input_params)
const = 0;
60 virtual JSON listProjects_(
const std::string &input_params)
const = 0;
72 void clone_(
const std::string &dest_proj_id,
73 const std::string &dest_folder)
const;
82 dxid_ = to_copy.dxid_;
83 proj_ = to_copy.proj_;
106 std::string
getID()
const {
return dxid_; }
112 operator std::string() {
return dxid_; }
129 virtual void setIDs(
const std::string &dxid,
const std::string &proj=
"default");
141 virtual void setIDs(
const char *dxid,
const char *proj=NULL);
153 virtual void setIDs(
const JSON &dxlink);
164 JSON
describe(
bool incl_properties=
false,
bool incl_details=
false)
const;
175 void addTypes(
const JSON &types)
const;
237 void rename(
const std::string &name)
const;
268 void addTags(
const JSON &tags)
const;
284 virtual void close()
const;
298 void move(
const std::string &dest_folder)
const;
314 JSON
DXLink(
const std::string &dxid,
const std::string &proj=
"");
Searching for objects in the Platform.
JSON DXLink(const std::string &dxid, const std::string &proj)
Definition: bindings.cc:181
JSON getProperties() const
Definition: bindings.cc:134
std::string getProjectID() const
Definition: bindings.h:117
void unhide() const
Definition: bindings.cc:116
void move(const std::string &dest_folder) const
Definition: bindings.cc:169
virtual void setIDs(const std::string &dxid, const std::string &proj="default")
Definition: bindings.cc:24
void addTypes(const JSON &types) const
Definition: bindings.cc:92
void setProperties(const JSON &properties) const
Definition: bindings.cc:127
DXDataObject(const std::string &dxid, const std::string &proj)
Definition: bindings.h:99
An executable object that can be published for others to discover.
Definition: api.cc:7
The abstract base class for all data object remote handlers.
Definition: bindings.h:42
JSON getDetails() const
Definition: bindings.cc:104
void addTags(const JSON &tags) const
Definition: bindings.cc:138
void setDetails(const JSON &details) const
Definition: bindings.cc:108
virtual void close() const
Definition: bindings.cc:152
JSON listProjects() const
Definition: bindings.cc:156
std::string getID() const
Definition: bindings.h:106
void clone_(const std::string &dest_proj_id, const std::string &dest_folder) const
Definition: bindings.cc:160
void hide() const
Definition: bindings.cc:112
void removeTags(const JSON &tags) const
Definition: bindings.cc:145
DXDataObject(const DXDataObject &to_copy)
Definition: bindings.h:81
JSON describe(bool incl_properties=false, bool incl_details=false) const
Definition: bindings.cc:82
void removeTypes(const JSON &types) const
Definition: bindings.cc:98
DXDataObject(const std::string &dxid)
Definition: bindings.h:91
void rename(const std::string &name) const
Definition: bindings.cc:120