ILIAS  release_5-1 Revision 5.0.0-5477-g43f3e3fab5f
ilECSCourseUrlConnector Class Reference

Connector for writing ecs course urls. More...

+ Inheritance diagram for ilECSCourseUrlConnector:
+ Collaboration diagram for ilECSCourseUrlConnector:

Public Member Functions

 __construct (ilECSSetting $settings=null)
 Constructor. More...
 
 addUrl (ilECSCourseUrl $url, $a_target_mid)
 Send url of newly created courses to ecs. More...
 
- Public Member Functions inherited from ilECSConnector
 __construct (ilECSSetting $settings=null)
 Constructor. More...
 
 addHeader ($a_name, $a_value)
 Add Header. More...
 
 getHeader ()
 
 setHeader ($a_header_strings)
 
 getServer ()
 Get current server setting. More...
 
 addAuth ($a_post, $a_target_mid)
 Add auth resource. More...
 
 getAuth ($a_hash, $a_details_only=FALSE)
 get auth resource More...
 
 getEventQueues ()
 get event queue More...
 
 readEventFifo ($a_delete=false)
 Read event fifo. More...
 
 getResourceList ($a_path)
 
 getResource ($a_path, $a_econtent_id, $a_details_only=false)
 Get resources from ECS server. More...
 
 addResource ($a_path, $a_post)
 Add resource. More...
 
 updateResource ($a_path, $a_econtent_id, $a_post_string)
 update resource More...
 
 deleteResource ($a_path, $a_econtent_id)
 Delete resource. More...
 
 getMemberships ($a_mid=0)
 @access public More...
 

Additional Inherited Members

- Data Fields inherited from ilECSConnector
const HTTP_CODE_CREATED = 201
 
const HTTP_CODE_OK = 200
 
const HTTP_CODE_NOT_FOUND = 404
 
const HEADER_MEMBERSHIPS = 'X-EcsReceiverMemberships'
 
const HEADER_COMMUNITIES = 'X-EcsReceiverCommunities'
 
- Protected Member Functions inherited from ilECSConnector
 prepareConnection ()
 prepare connection More...
 
 call ()
 call peer More...
 
- Static Protected Member Functions inherited from ilECSConnector
static _fetchEContentIdFromHeader ($a_header)
 fetch new econtent id from location header More...
 
- Protected Attributes inherited from ilECSConnector
 $path_postfix = ''
 
 $settings
 
 $header_strings = array()
 

Detailed Description

Connector for writing ecs course urls.

Author
Stefan Meyer smeye.nosp@m.r.il.nosp@m.ias@g.nosp@m.mx.d.nosp@m.e $Id$

Definition at line 13 of file class.ilECSCourseUrlConnector.php.

Constructor & Destructor Documentation

◆ __construct()

ilECSCourseUrlConnector::__construct ( ilECSSetting  $settings = null)

Constructor.

Parameters
ilECSSetting$settings

Reimplemented from ilECSConnector.

Definition at line 19 of file class.ilECSCourseUrlConnector.php.

20 {
21 parent::__construct($settings);
22 }

References ilECSConnector\$settings.

Member Function Documentation

◆ addUrl()

ilECSCourseUrlConnector::addUrl ( ilECSCourseUrl  $url,
  $a_target_mid 
)

Send url of newly created courses to ecs.

Returns
type
Exceptions
ilECSConnectorException

Definition at line 29 of file class.ilECSCourseUrlConnector.php.

30 {
31 global $ilLog;
32
33 $ilLog->write(__METHOD__.': Add new course url ...');
34
35 $this->path_postfix = '/campusconnect/course_urls';
36
37 try
38 {
39 $this->prepareConnection();
40
41 $this->addHeader('Content-Type', 'application/json');
42 $this->addHeader('Accept', 'application/json');
43 $this->addHeader(ilECSConnector::HEADER_MEMBERSHIPS, $a_target_mid);
44
45 $this->curl->setOpt(CURLOPT_HTTPHEADER, $this->getHeader());
46 $this->curl->setOpt(CURLOPT_POST,true);
47 $this->curl->setOpt(CURLOPT_POSTFIELDS,json_encode($url));
48
49 $GLOBALS['ilLog']->write(__METHOD__.': Sending url '. print_r(json_encode($url),true));
50
51 $ret = $this->call();
52
53 $info = $this->curl->getInfo(CURLINFO_HTTP_CODE);
54
55 $ilLog->write(__METHOD__.': Checking HTTP status...');
56 if($info != self::HTTP_CODE_CREATED)
57 {
58 $ilLog->write(__METHOD__.': Cannot create course url ressource, did not receive HTTP 201. ');
59 $ilLog->write(__METHOD__.': POST was: '. json_encode($url));
60 $ilLog->write(__METHOD__.': HTTP code: '.$info);
61 throw new ilECSConnectorException('Received HTTP status code: '.$info);
62 }
63 $ilLog->write(__METHOD__.': ... got HTTP 201 (created)');
64 }
66 {
67 throw new ilECSConnectorException('Error calling ECS service: '.$exc->getMessage());
68 }
69 }
addHeader($a_name, $a_value)
Add Header.
prepareConnection()
prepare connection
$info
Definition: example_052.php:80
$GLOBALS['PHPCAS_CLIENT']
This global variable is used by the interface class phpCAS.
Definition: CAS.php:276
$url
Definition: shib_logout.php:72

References $GLOBALS, $ilLog, $info, $ret, $url, ilECSConnector\addHeader(), ilECSConnector\call(), ilECSConnector\getHeader(), ilECSConnector\HEADER_MEMBERSHIPS, and ilECSConnector\prepareConnection().

+ Here is the call graph for this function:

The documentation for this class was generated from the following file: