action = $action; $this->bucket = $bucket; $this->region = $region; $this->resourcePrefix = $resourcePrefix; } function set_effect($isAllow){ if($isAllow){ $this->effect = 'allow'; }else{ $this->effect = 'deny'; } } function get_action(){ if($this->action == null){ throw new \Exception("action == null"); } return $this->action; } function get_resource(){ if($this->bucket == null){ throw new \Exception("bucket == null"); } if($this->resourcePrefix == null){ throw new \Exception("resourcePrefix == null"); } $index = strripos($this->bucket, '-'); if($index < 0){ throw new Exception("bucket is invalid: " + $this->bucket); } $appid = substr($this->bucket, $index + 1); if(!(strpos($this->resourcePrefix, '/') === 0)){ $this->resourcePrefix = '/' . $this->resourcePrefix; } return 'qcs::cos:' . $this->region . ':uid/' . $appid . ':' . $this->bucket . $this->resourcePrefix; } function get_effect(){ return $this->effect; } } ?>