Go to the documentation of this file.00001 #if defined(__WAVE__) && defined(SAGA_CREATE_PREPROCESSED_FILES)
00002 #pragma wave option(preserve: 2, line: 1, output: "preprocessed/service.cpp")
00003 #endif
00004
00005
00006
00007
00008
00009 #if defined(__WAVE__) && defined(SAGA_CREATE_PREPROCESSED_FILES)
00010 #pragma wave option(output: null)
00011 #endif
00012
00013
00014 #include <saga/saga/job.hpp>
00015 #include <saga/saga/adaptors/task.hpp>
00016 #include <saga/impl/job.hpp>
00017 #include <saga/saga/detail/call.hpp>
00018
00019 #ifdef SAGA_DEBUG
00020 #include <saga/saga/packages/job/preprocessed/service.cpp>
00021 #else
00022
00023 #if defined(__WAVE__) && defined(SAGA_CREATE_PREPROCESSED_FILES)
00024 #pragma wave option(preserve: 2, line: 1, output: "preprocessed/service.cpp")
00025 #endif
00026
00027 namespace saga
00028 {
00029 namespace job {
00030
00031 service::service (session const &s, saga::url rm)
00032 : saga::object (new saga::impl::job_service (s, rm))
00033 {
00034 this->saga::object::get_impl()->init();
00035 }
00036
00037 service::service (saga::url rm)
00038 : saga::object (new saga::impl::job_service(saga::detail::get_the_session(), rm))
00039 {
00040 this->saga::object::get_impl()->init();
00041 }
00042
00043 service::service (saga::object const& o)
00044 : saga::object (o)
00045 {
00046 if (this->get_type() != saga::object::JobService)
00047 {
00048 SAGA_THROW("Bad type conversion.", saga::BadParameter);
00049 }
00050 }
00051
00052 service::service (saga::impl::job_service *impl)
00053 : saga::object (impl)
00054 {
00055 }
00056
00057 service::service (int)
00058 {
00059 }
00060
00061 service::~service (void)
00062 {
00063 }
00064
00065 service &service::operator= (saga::object const& o)
00066 {
00067 if (this != &o)
00068 this->saga::object::operator=(o);
00069 return *this;
00070 }
00071
00072 saga::impl::job_service* service::get_impl() const
00073 {
00074 typedef saga::object base_type;
00075 return static_cast<saga::impl::job_service*>(this->base_type::get_impl());
00076 }
00077
00078 TR1::shared_ptr <saga::impl::job_service> service::get_impl_sp(void) const
00079 {
00080
00081 typedef saga::object base_type;
00082 return TR1::static_pointer_cast <saga::impl::job_service> (
00083 this->base_type::get_impl_sp());
00084 }
00085
00086
00087 SAGA_CALL_CREATE_IMP_2(service, impl::job_service, session const&, saga::url)
00088
00089
00090 SAGA_CALL_IMP_1 (service, create_job, description)
00091 SAGA_CALL_CONST_IMP_0(service, get_url)
00092 SAGA_CALL_IMP_5 (service, run_job, std::string, std::string,
00093 saga::job::ostream&, saga::job::istream&, saga::job::istream&)
00094 SAGA_CALL_IMP_2_EX (service, run_job, run_job_noio, std::string, std::string)
00095 SAGA_CALL_IMP_0 (service, list)
00096 SAGA_CALL_IMP_1 (service, get_job, std::string)
00097 SAGA_CALL_IMP_0 (service, get_self)
00098 }
00099
00100 }
00102
00103 #endif
00104