def move_recursive(self, dest_path):
if self.provider.readonly:<EOL><INDENT>raise DAVError(HTTP_FORBIDDEN)<EOL><DEDENT>fpDest = self.provider._loc_to_file_path(dest_path, self.environ)<EOL>assert not util.is_equal_or_child_uri(self.path, dest_path)<EOL>assert not os.path.exists(fpDest)<EOL>_logger.debug("<STR_LIT>".format(self._file_path, fpDest))<EOL>shutil.move(self._file_path, fpDest)<EOL>if self.provider.prop_manager:<EOL><INDENT>destRes = self.provider.get_resource_inst(dest_path, self.environ)<EOL>self.provider.prop_manager.move_properties(<EOL>self.get_ref_url(),<EOL>destRes.get_ref_url(),<EOL>with_children=True,<EOL>environ=self.environ,<EOL>)<EOL><DEDENT>
See DAVResource.move_recursive()