/////////////////////////////////////////////////////////////////////////////// // Open /////////////////////////////////////////////////////////////////////////////// void cHierDatabase::Open ( cBidirArchive* pArch, int numPages ) //throw (eArchive, eHierDatabase) { bool bTruncate = ( pArch->Length() == 0 ); inherited::Open( pArch, numPages ); OpenImpl( bTruncate ); }
void HttpRequest::Open (const char *verb, Uri *uri, DownloaderAccessPolicy policy) { Surface *surface; Application *application; const char *source_location; Uri *src_uri = NULL; VERIFY_MAIN_THREAD; LOG_DOWNLOADER ("HttpRequest::Open (%s, %p = %s, %i)\n", verb, uri, uri == NULL ? NULL : uri->ToString (), policy); g_free (this->verb); delete original_uri; g_free (this->uri); this->verb = g_strdup (verb); this->original_uri = new Uri (*uri); this->uri = uri->ToString (); access_policy = policy; surface = GetDeployment ()->GetSurface (); application = GetDeployment ()->GetCurrentApplication (); if (application->IsRunningOutOfBrowser ()) { source_location = surface->GetSourceLocation (); } else { source_location = GetDeployment ()->GetXapLocation (); if (source_location == NULL) source_location = surface->GetSourceLocation (); } // FIXME: ONLY VALIDATE IF USED FROM THE PLUGIN if (!Downloader::ValidateDownloadPolicy (source_location, uri, policy)) { LOG_DOWNLOADER ("HttpRequest::Open (): aborting due to security policy violation\n"); Failed ("Security Policy Violation"); Abort (); return; } /* Make the uri we request to the derived http request an absolute uri */ if (!uri->isAbsolute && source_location) { src_uri = new Uri (); if (!src_uri->Parse (source_location, true)) { Failed ("Could not parse source location"); delete src_uri; return; } src_uri->Combine (uri); g_free (this->uri); this->uri = src_uri->ToString (); delete src_uri; LOG_DOWNLOADER ("HttpRequest::Open (%s, %p = %s, %i) Url was absolutified to '%s' using source location '%s'\n", verb, uri, uri == NULL ? NULL : uri->ToString (), policy, this->uri, source_location); } OpenImpl (); }
void cBlockRecordFile::Open( cBidirArchive* pArch, int numPages ) //throw (eArchive) { ASSERT( ! mbOpen ); bool bTruncate = ( pArch->Length() == 0 ); mBlockFile.Open( pArch, numPages ); OpenImpl( bTruncate ); }
void cHierDatabase::Open ( const TSTRING& fileName, int numPages, bool bTruncate ) //throw (eArchive, eHierDatabase) { inherited::Open(fileName, numPages, bTruncate); #ifdef _BLOCKFILE_DEBUG AssertValid(); #endif OpenImpl( bTruncate ); }