gluu
公開メンバ関数 | 限定公開変数類 | 静的限定公開変数類 | 非公開変数類 | 全メンバ一覧
Logout クラス
Logout の継承関係図
Inheritance graph
Logout 連携図
Collaboration graph

公開メンバ関数

 __construct ()
 
 getRequestState ()
 
 setRequestState ($request_state)
 
 getRequestSessionState ()
 
 setRequestSessionState ($request_session_state)
 
 setRequestPostLogoutRedirectUri ($request_post_logout_redirect_uri)
 
 getResponseHtml ()
 
 getRequestIdToken ()
 
 getRequestPostLogoutRedirectUri ()
 
 setRequestIdToken ($request_id_token)
 
 getRequestOxdId ()
 
 setRequestOxdId ($request_oxd_id)
 
 setCommand ()
 
 setParams ()
 
 oxd_socket_request ($data, $char_count=8192)
 
 request ()
 
 getResponseData ()
 
 getData ()
 
 getCommand ()
 
 getResponseObject ()
 
 getResponseJSON ()
 
 getParams ()
 

限定公開変数類

 $data = array()
 
 $command
 
 $db
 
 $params = array()
 
 $response_json
 
 $response_object
 
 $response_data = array()
 

静的限定公開変数類

static $socket = null
 

非公開変数類

 $request_oxd_id = null
 
 $request_id_token = null
 
 $request_post_logout_redirect_uri = null
 
 $request_session_state = null
 
 $request_state = null
 
 $response_html
 

詳解

構築子と解体子

◆ __construct()

Logout::__construct ( )

Constructor

戻り値
void
98  {
99  parent::__construct(); // TODO: Change the autogenerated stub
100  }

関数詳解

◆ getCommand()

Client_OXD_RP::getCommand ( )
inherited
戻り値
string
164  {
165  return $this->command;
166  }
$command
Definition: Client_OXD_RP.php:62

◆ getData()

Client_OXD_RP::getData ( )
inherited
戻り値
array
155  {
156  $this->data = array('command' => $this->getCommand(), 'params' => $this->getParams());
157  return $this->data;
158  }
$data
Definition: Client_OXD_RP.php:61
getParams()
Definition: Client_OXD_RP.php:199
getCommand()
Definition: Client_OXD_RP.php:163

◆ getParams()

Client_OXD_RP::getParams ( )
inherited
戻り値
array
200  {
201  return $this->params;
202  }
$params
Definition: Client_OXD_RP.php:64

◆ getRequestIdToken()

Logout::getRequestIdToken ( )
戻り値
string
159  {
161  }
$request_id_token
Definition: Logout.php:71

◆ getRequestOxdId()

Logout::getRequestOxdId ( )
戻り値
string
184  {
185  return $this->request_oxd_id;
186  }
$request_oxd_id
Definition: Logout.php:67

◆ getRequestPostLogoutRedirectUri()

Logout::getRequestPostLogoutRedirectUri ( )
戻り値
string
167  {
169  }
$request_post_logout_redirect_uri
Definition: Logout.php:75

◆ getRequestSessionState()

Logout::getRequestSessionState ( )
戻り値
string
123  {
125  }
$request_session_state
Definition: Logout.php:79

◆ getRequestState()

Logout::getRequestState ( )
戻り値
string
106  {
107  return $this->request_state;
108  }
$request_state
Definition: Logout.php:83

◆ getResponseData()

Client_OXD_RP::getResponseData ( )
inherited
戻り値
mixed
141  {
142  if (!$this->getResponseObject()) {
143  $this->response_data = 'Data is empty';
144  return;
145  } else {
146  $this->response_data = $this->getResponseObject()->data;
147  }
148  return $this->response_data;
149  }
getResponseObject()
Definition: Client_OXD_RP.php:177
$response_data
Definition: Client_OXD_RP.php:67

◆ getResponseHtml()

Logout::getResponseHtml ( )
戻り値
string
150  {
151  $this->response_html = $this->getResponseData()->url;
152  return $this->response_html;
153  }
getResponseData()
Definition: Client_OXD_RP.php:140
$response_html
Definition: Logout.php:90

◆ getResponseJSON()

Client_OXD_RP::getResponseJSON ( )
inherited

function getting result from oxD server. return: response_json - The JSON response from the oxD Server

187  {
188  return $this->response_json;
189  }
$response_json
Definition: Client_OXD_RP.php:65

◆ getResponseObject()

Client_OXD_RP::getResponseObject ( )
inherited

getResult function geting result from oxD server. Return: response_object - The JSON response parsing to object

178  {
179  return $this->response_object;
180  }
$response_object
Definition: Client_OXD_RP.php:66

◆ oxd_socket_request()

Client_OXD_RP::oxd_socket_request (   $data,
  $char_count = 8192 
)
inherited

request to oxd socket

80  {
81  $db = new DB(DB_DRIVER, DB_HOSTNAME, DB_USERNAME, DB_PASSWORD, DB_DATABASE, DB_PORT);
82  $oxd_config = json_decode($db->query("SELECT `gluu_value` FROM `" . DB_PREFIX ."gluu_table` WHERE `gluu_action` LIKE 'gluu_config'")->row['gluu_value'],true);
83  self::$socket = stream_socket_client('127.0.0.1:' . $oxd_config['gluu_oxd_port'], $errno, $errstr, STREAM_CLIENT_PERSISTENT);
84  if (!self::$socket) {
85  return 'Can not connect to oxd server';
86  }else{
87  fwrite(self::$socket, $data);
88  $result = fread(self::$socket, $char_count);
89  fclose(self::$socket);
90  return $result;
91  }
92 
93  }
$data
Definition: Client_OXD_RP.php:61
$db
Definition: Client_OXD_RP.php:63

◆ request()

Client_OXD_RP::request ( )
inherited

send function sends the command to the oxD server.

Args: command (dict) - Dict representation of the JSON command string

101  {
102  $this->setParams();
103 
104  $jsondata = json_encode($this->getData(), JSON_UNESCAPED_SLASHES);
105 
106  $lenght = strlen($jsondata);
107  if($lenght<=0){
108  return array('status'=> false, 'message'=> 'Sorry .Problem with oxd.');
109  }else{
110  $lenght = $lenght <= 999 ? "0" . $lenght : $lenght;
111  }
112 
113  $this->response_json = $this->oxd_socket_request(utf8_encode($lenght . $jsondata));
114  if($this->response_json !='Can not connect to oxd server'){
115  $this->response_json = str_replace(substr($this->response_json, 0, 4), "", $this->response_json);
116  if ($this->response_json) {
117  $object = json_decode($this->response_json);
118  if ($object->status == 'error') {
119  if($object->data->error == "invalid_op_host"){
120  return array('status'=> false, 'message'=> $object->data->error);
121  }elseif($object->data->error == "internal_error"){
122  return array('status'=> false, 'message'=> $object->data->error , 'error_message'=>$object->data->error_description);
123  }else{
124  return array('status'=> false, 'message'=> $object->data->error . ' : ' . $object->data->error_description);
125  }
126  } elseif ($object->status == 'ok') {
127  $this->response_object = json_decode($this->response_json);
128  return array('status'=> true);
129  }
130  }
131  }else{
132  return array('status'=> false, 'message'=> 'Can not connect to the oxd server. Please check the oxd-config.json file to make sure you have entered the correct port and the oxd server is operational.');
133  }
134 
135  }
oxd_socket_request($data, $char_count=8192)
Definition: Client_OXD_RP.php:80
getData()
Definition: Client_OXD_RP.php:154

◆ setCommand()

Logout::setCommand ( )

Protocol command to oXD server

戻り値
void
201  {
202  $this->command = 'get_logout_uri';
203  }

◆ setParams()

Logout::setParams ( )

Protocol parameter to oXD server

戻り値
void
209  {
210  $this->params = array(
211  "oxd_id" => $this->getRequestOxdId(),
212  "id_token_hint" => $this->getRequestIdToken(),
213  "post_logout_redirect_uri" => $this->getRequestPostLogoutRedirectUri(),
214  "state" => $this->getRequestState(),
215  "session_state" => $this->getRequestSessionState()
216  );
217  }
getRequestOxdId()
Definition: Logout.php:183
getRequestPostLogoutRedirectUri()
Definition: Logout.php:166
getRequestIdToken()
Definition: Logout.php:158
getRequestSessionState()
Definition: Logout.php:122
getRequestState()
Definition: Logout.php:105

◆ setRequestIdToken()

Logout::setRequestIdToken (   $request_id_token)
引数
string$request_id_token
戻り値
void
176  {
177  $this->request_id_token = $request_id_token;
178  }
$request_id_token
Definition: Logout.php:71

◆ setRequestOxdId()

Logout::setRequestOxdId (   $request_oxd_id)
引数
string$request_oxd_id
戻り値
void
193  {
194  $this->request_oxd_id = $request_oxd_id;
195  }
$request_oxd_id
Definition: Logout.php:67

◆ setRequestPostLogoutRedirectUri()

Logout::setRequestPostLogoutRedirectUri (   $request_post_logout_redirect_uri)
引数
string$request_post_logout_redirect_uri
戻り値
void
142  {
143  $this->request_post_logout_redirect_uri = $request_post_logout_redirect_uri;
144  }
$request_post_logout_redirect_uri
Definition: Logout.php:75

◆ setRequestSessionState()

Logout::setRequestSessionState (   $request_session_state)
引数
string$request_session_state
戻り値
void
132  {
133  $this->request_session_state = $request_session_state;
134  }
$request_session_state
Definition: Logout.php:79

◆ setRequestState()

Logout::setRequestState (   $request_state)
引数
string$request_state
戻り値
void
115  {
116  $this->request_state = $request_state;
117  }
$request_state
Definition: Logout.php:83

メンバ詳解

◆ $command

Client_OXD_RP::$command
protectedinherited

◆ $data

Client_OXD_RP::$data = array()
protectedinherited

◆ $db

Client_OXD_RP::$db
protectedinherited

◆ $params

Client_OXD_RP::$params = array()
protectedinherited

◆ $request_id_token

Logout::$request_id_token = null
private

◆ $request_oxd_id

Logout::$request_oxd_id = null
private

◆ $request_post_logout_redirect_uri

Logout::$request_post_logout_redirect_uri = null
private

◆ $request_session_state

Logout::$request_session_state = null
private

◆ $request_state

Logout::$request_state = null
private

◆ $response_data

Client_OXD_RP::$response_data = array()
protectedinherited

◆ $response_html

Logout::$response_html
private

◆ $response_json

Client_OXD_RP::$response_json
protectedinherited

◆ $response_object

Client_OXD_RP::$response_object
protectedinherited

◆ $socket

Client_OXD_RP::$socket = null
staticprotectedinherited

このクラス詳解は次のファイルから抽出されました: