com.googlecode.htmlcompressor.compressor.HtmlMetrics Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of htmlcompressor Show documentation
Show all versions of htmlcompressor Show documentation
HtmlCompressor is a small, fast and very easy to use Java library that minifies given HTML or XML source by
removing extra whitespaces, comments and other unneeded characters without breaking the content structure.
As a result pages become smaller in size and load faster. A command-line version of the compressor is also
available.
/**
* Copyright 2009-2017 the original author or authors.
*
* 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
*
* http://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 com.googlecode.htmlcompressor.compressor;
/**
* Class that stores metrics about HTML documents.
*
* @author Sergiy Kovalchuk
*/
public class HtmlMetrics {
/** The filesize. */
private int filesize;
/** The empty chars. */
private int emptyChars;
/** The inline script size. */
private int inlineScriptSize;
/** The inline style size. */
private int inlineStyleSize;
/** The inline event size. */
private int inlineEventSize;
/**
* Returns total filesize of a document.
*
* @return total filesize of a document, in bytes
*/
public int getFilesize() {
return filesize;
}
/**
* Sets the filesize.
*
* @param filesize
* the filesize to set
*/
public void setFilesize(int filesize) {
this.filesize = filesize;
}
/**
* Returns number of empty characters (spaces, tabs, end of lines) in a document.
*
* @return number of empty characters in a document
*/
public int getEmptyChars() {
return emptyChars;
}
/**
* Sets the empty chars.
*
* @param emptyChars
* the emptyChars to set
*/
public void setEmptyChars(int emptyChars) {
this.emptyChars = emptyChars;
}
/**
* Returns total size of inline <script>
tags.
*
* @return total size of inline <script>
tags, in bytes
*/
public int getInlineScriptSize() {
return inlineScriptSize;
}
/**
* Sets the inline script size.
*
* @param inlineScriptSize
* the inlineScriptSize to set
*/
public void setInlineScriptSize(int inlineScriptSize) {
this.inlineScriptSize = inlineScriptSize;
}
/**
* Returns total size of inline <style>
tags.
*
* @return total size of inline <style>
tags, in bytes
*/
public int getInlineStyleSize() {
return inlineStyleSize;
}
/**
* Sets the inline style size.
*
* @param inlineStyleSize
* the inlineStyleSize to set
*/
public void setInlineStyleSize(int inlineStyleSize) {
this.inlineStyleSize = inlineStyleSize;
}
/**
* Returns total size of inline event handlers (onclick
, etc).
*
* @return total size of inline event handlers, in bytes
*/
public int getInlineEventSize() {
return inlineEventSize;
}
/**
* Sets the inline event size.
*
* @param inlineEventSize
* the inlineEventSize to set
*/
public void setInlineEventSize(int inlineEventSize) {
this.inlineEventSize = inlineEventSize;
}
@Override
public String toString() {
return String.format("Filesize=%d, Empty Chars=%d, Script Size=%d, Style Size=%d, Event Handler Size=%d",
filesize, emptyChars, inlineScriptSize, inlineStyleSize, inlineEventSize);
}
}