original_string: public function is_plugin_folder_removable($component) {
  
          $pluginfo = $this->get_plugin_info($component);
  
          if (is_null($pluginfo)) {
              return false;
          }
  
          // To be able to remove the plugin folder, its parent must be writable, too.
          if (!is_writable(dirname($pluginfo->rootdir))) {
              return false;
          }
  
          // Check that the folder and all its content is writable (thence removable).
          return $this->is_directory_removable($pluginfo->rootdir);
      }
code: public function is_plugin_folder_removable($component) {
  
          $pluginfo = $this->get_plugin_info($component);
  
          if (is_null($pluginfo)) {
              return false;
          }
  
          // To be able to remove the plugin folder, its parent must be writable, too.
          if (!is_writable(dirname($pluginfo->rootdir))) {
              return false;
          }
  
          // Check that the folder and all its content is writable (thence removable).
          return $this->is_directory_removable($pluginfo->rootdir);
      }
code_tokens: public function is_plugin_folder_removable ( $ component ) { $ pluginfo = $ this -> get_plugin_info ( $ component ) ; if ( is_null ( $ pluginfo ) ) { return false ; } // To be able to remove the plugin folder, its parent must be writable, too. if ( ! is_writable ( dirname ( $ pluginfo -> rootdir ) ) ) { return false ; } // Check that the folder and all its content is writable (thence removable). return $ this -> is_directory_removable ( $ pluginfo -> rootdir ) ; }
docstring: Check to see if the given plugin folder can be removed by the web server process.
  
  @param string $component full frankenstyle component
  @return bool
docstring_tokens: Check to see if the given plugin folder can be removed by the web server process .