org.htmlunit.AbstractPage Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of xlt Show documentation
Show all versions of xlt Show documentation
XLT (Xceptance LoadTest) is an extensive load and performance test tool developed and maintained by Xceptance.
The newest version!
/*
* Copyright (c) 2002-2024 Gargoyle Software Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
* https://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.htmlunit;
import java.net.URL;
/**
* A basic {@link Page} implementation.
*
* @author Ahmed Ashour
*/
public class AbstractPage implements Page {
private final WebResponse webResponse_;
private final WebWindow enclosingWindow_;
/**
* Creates an instance.
*
* @param webResponse the response from the server
* @param enclosingWindow the window that holds the page
*/
public AbstractPage(final WebResponse webResponse, final WebWindow enclosingWindow) {
webResponse_ = webResponse;
enclosingWindow_ = enclosingWindow;
}
/**
* Initializes this page.
*/
@Override
public void initialize() {
// nothing to do
}
/**
* Cleans up this page.
*/
@Override
public void cleanUp() {
if (getEnclosingWindow().getWebClient().getCache().getCachedResponse(webResponse_.getWebRequest()) == null) {
webResponse_.cleanUp();
}
}
/**
* Returns the web response that was originally used to create this page.
*
* @return the web response that was originally used to create this page
*/
@Override
public WebResponse getWebResponse() {
return webResponse_;
}
/**
* Returns the window that this page is sitting inside.
*
* @return the enclosing frame or null if this page isn't inside a frame
*/
@Override
public WebWindow getEnclosingWindow() {
return enclosingWindow_;
}
/**
* Returns the URL of this page.
* @return the URL of this page
*/
@Override
public URL getUrl() {
return getWebResponse().getWebRequest().getUrl();
}
@Override
public boolean isHtmlPage() {
return false;
}
}