summaryrefslogtreecommitdiff
path: root/project2/json
diff options
context:
space:
mode:
Diffstat (limited to 'project2/json')
-rw-r--r--project2/json/presenter-p.cpp8
-rw-r--r--project2/json/presenter.cpp10
-rw-r--r--project2/json/presenter.h6
3 files changed, 12 insertions, 12 deletions
diff --git a/project2/json/presenter-p.cpp b/project2/json/presenter-p.cpp
index 3cb5bf8..92ba8c1 100644
--- a/project2/json/presenter-p.cpp
+++ b/project2/json/presenter-p.cpp
@@ -3,16 +3,16 @@
class Json_P_Presenter : public JsonPresenter {
public:
- Json_P_Presenter(ScriptNodePtr s, ObjectSource os) :
+ Json_P_Presenter(ScriptNodePtr s, ObjectSource os, ExecContext *) :
JsonPresenter(s, os, "application/json-p"),
Callback(s, "callback") {
}
- void writeTo(std::ostream & o, const std::string & encoding) const
+ void writeTo(std::ostream & o, const std::string & encoding, ExecContext * ec) const
{
- o << Callback().as<Glib::ustring>();
+ o << Callback(ec).as<Glib::ustring>();
o << "(";
- JsonPresenter::writeTo(o, encoding);
+ JsonPresenter::writeTo(o, encoding, ec);
o << ");";
}
diff --git a/project2/json/presenter.cpp b/project2/json/presenter.cpp
index 111ae5c..2eabeac 100644
--- a/project2/json/presenter.cpp
+++ b/project2/json/presenter.cpp
@@ -15,7 +15,7 @@ JsonPresenter::JsonPresenter(ScriptNodePtr s, ObjectSource os, const Glib::ustri
returnObject(s, "object", Null()) {
}
-JsonPresenter::JsonPresenter(ScriptNodePtr s, ObjectSource os) :
+JsonPresenter::JsonPresenter(ScriptNodePtr s, ObjectSource os, ExecContext *) :
TransformSource(s, os),
MultiRowSetPresenter(os),
ContentPresenter("application/json"),
@@ -25,7 +25,7 @@ JsonPresenter::JsonPresenter(ScriptNodePtr s, ObjectSource os) :
}
void
-JsonPresenter::init()
+JsonPresenter::init(ExecContext *)
{
while (!curRowSet.empty()) {
curRowSet.pop();
@@ -131,13 +131,13 @@ JsonPresenter::getContentClass() const
}
void
-JsonPresenter::writeTo(std::ostream & o, const std::string & encoding) const
+JsonPresenter::writeTo(std::ostream & o, const std::string & encoding, ExecContext * ec) const
{
- if (returnObject().isNull()) {
+ if (returnObject(ec).isNull()) {
serializeObject(object, o, encoding);
}
else {
- serializeValue(*object[returnObject()], o, encoding);
+ serializeValue(*object[returnObject(ec)], o, encoding);
}
}
diff --git a/project2/json/presenter.h b/project2/json/presenter.h
index 8d5af2a..5ccecb2 100644
--- a/project2/json/presenter.h
+++ b/project2/json/presenter.h
@@ -9,9 +9,9 @@
class JsonPresenter : public MultiRowSetPresenter, public ContentPresenter, public SourceOf<json::Object>, public WritableContent, public SourceOf<WritableContent> {
public:
- JsonPresenter(ScriptNodePtr s, ObjectSource);
+ JsonPresenter(ScriptNodePtr s, ObjectSource, ExecContext *);
JsonPresenter(ScriptNodePtr s, ObjectSource, const Glib::ustring &);
- void init();
+ void init(ExecContext * ec);
typedef void (JsonPresenter::*ValueAdder)(const Glib::ustring &, const VariableType &) const;
typedef std::stack<ValueAdder> ValueAdderStack;
mutable ValueAdderStack vaStack;
@@ -29,7 +29,7 @@ class JsonPresenter : public MultiRowSetPresenter, public ContentPresenter, publ
operator const WritableContent * () const;
Glib::ustring getContentType() const;
Class getContentClass() const;
- void writeTo(std::ostream & o, const std::string & encoding) const;
+ void writeTo(std::ostream & o, const std::string & encoding, ExecContext *) const;
private:
Variable returnObject;