//# 0 errors, 652 messages
//#
/*
    //#staticpage.java:1:1: class: net.sourceforge.pebble.domain.StaticPage
    //#staticpage.java:1:1: method: net.sourceforge.pebble.domain.StaticPage.net.sourceforge.pebble.domain.StaticPage__static_init
 * Copyright (c) 2003-2006, Simon Brown
 * All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions are met:
 *
 *   - Redistributions of source code must retain the above copyright
 *     notice, this list of conditions and the following disclaimer.
 *
 *   - Redistributions in binary form must reproduce the above copyright
 *     notice, this list of conditions and the following disclaimer in
 *     the documentation and/or other materials provided with the
 *     distribution.
 *
 *   - Neither the name of Pebble nor the names of its contributors may
 *     be used to endorse or promote products derived from this software
 *     without specific prior written permission.
 *
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
 * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
 * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
 * POSSIBILITY OF SUCH DAMAGE.
 */
package net.sourceforge.pebble.domain;

import net.sourceforge.pebble.util.StringUtils;
import net.sourceforge.pebble.web.validation.ValidationContext;

import java.util.ArrayList;
import java.util.Collections;
import java.util.List;

/**
 * Represents a page.
 *
 * @author Simon Brown
 */
public class StaticPage extends PageBasedContent {

	public static final String TEMPLATE_PROPERTY = "template";
	
  /** the name of the page */
  private String name;
  
  /** the name of the template **/
  private String template = TEMPLATE_PROPERTY;

  /**
   * Creates a new blog entry.
   *
   * @param blog    the owning Blog
   */
  public StaticPage(Blog blog) {
    super(blog);
    //#staticpage.java:62: method: void net.sourceforge.pebble.domain.StaticPage.net.sourceforge.pebble.domain.StaticPage(Blog)
    //#input(void net.sourceforge.pebble.domain.StaticPage(Blog)): __Descendant_Table[net/sourceforge/pebble/domain/StaticPage]
    //#input(void net.sourceforge.pebble.domain.StaticPage(Blog)): __Descendant_Table[others]
    //#input(void net.sourceforge.pebble.domain.StaticPage(Blog)): __Dispatch_Table.getState()Lnet/sourceforge/pebble/domain/State;
    //#input(void net.sourceforge.pebble.domain.StaticPage(Blog)): __Dispatch_Table.setDate(Ljava/util/Date;)V
    //#input(void net.sourceforge.pebble.domain.StaticPage(Blog)): __Dispatch_Table.setPublished(Z)V
    //#input(void net.sourceforge.pebble.domain.StaticPage(Blog)): __Dispatch_Table.setState(Lnet/sourceforge/pebble/domain/State;)V
    //#input(void net.sourceforge.pebble.domain.StaticPage(Blog)): blog
    //#input(void net.sourceforge.pebble.domain.StaticPage(Blog)): net.sourceforge.pebble.domain.State__static_init.new State(State__static_init#4).__Tag
    //#input(void net.sourceforge.pebble.domain.StaticPage(Blog)): net.sourceforge.pebble.domain.State__static_init.new State(State__static_init#5).__Tag
    //#input(void net.sourceforge.pebble.domain.StaticPage(Blog)): net/sourceforge/pebble/domain/BlogEntry.__Descendant_Table[net/sourceforge/pebble/domain/BlogEntry]
    //#input(void net.sourceforge.pebble.domain.StaticPage(Blog)): net/sourceforge/pebble/domain/BlogEntry.__Descendant_Table[others]
    //#input(void net.sourceforge.pebble.domain.StaticPage(Blog)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.addEvent(Lnet/sourceforge/pebble/api/event/PebbleEvent;)V
    //#input(void net.sourceforge.pebble.domain.StaticPage(Blog)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.areEventsEnabled()Z
    //#input(void net.sourceforge.pebble.domain.StaticPage(Blog)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.getState()Lnet/sourceforge/pebble/domain/State;
    //#input(void net.sourceforge.pebble.domain.StaticPage(Blog)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.isPublished()Z
    //#input(void net.sourceforge.pebble.domain.StaticPage(Blog)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.isUnpublished()Z
    //#input(void net.sourceforge.pebble.domain.StaticPage(Blog)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.setDate(Ljava/util/Date;)V
    //#input(void net.sourceforge.pebble.domain.StaticPage(Blog)): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.setState(Lnet/sourceforge/pebble/domain/State;)V
    //#input(void net.sourceforge.pebble.domain.StaticPage(Blog)): net/sourceforge/pebble/domain/PageBasedContent.__Descendant_Table[net/sourceforge/pebble/domain/BlogEntry]
    //#input(void net.sourceforge.pebble.domain.StaticPage(Blog)): net/sourceforge/pebble/domain/PageBasedContent.__Descendant_Table[net/sourceforge/pebble/domain/PageBasedContent]
    //#input(void net.sourceforge.pebble.domain.StaticPage(Blog)): net/sourceforge/pebble/domain/PageBasedContent.__Descendant_Table[net/sourceforge/pebble/domain/StaticPage]
    //#input(void net.sourceforge.pebble.domain.StaticPage(Blog)): net/sourceforge/pebble/domain/PageBasedContent.__Descendant_Table[others]
    //#input(void net.sourceforge.pebble.domain.StaticPage(Blog)): net/sourceforge/pebble/domain/PageBasedContent.__Dispatch_Table.getState()Lnet/sourceforge/pebble/domain/State;
    //#input(void net.sourceforge.pebble.domain.StaticPage(Blog)): net/sourceforge/pebble/domain/PageBasedContent.__Dispatch_Table.setDate(Ljava/util/Date;)V
    //#input(void net.sourceforge.pebble.domain.StaticPage(Blog)): net/sourceforge/pebble/domain/PageBasedContent.__Dispatch_Table.setState(Lnet/sourceforge/pebble/domain/State;)V
    //#input(void net.sourceforge.pebble.domain.StaticPage(Blog)): net/sourceforge/pebble/domain/State.PUBLISHED
    //#input(void net.sourceforge.pebble.domain.StaticPage(Blog)): net/sourceforge/pebble/domain/State.UNPUBLISHED
    //#input(void net.sourceforge.pebble.domain.StaticPage(Blog)): net/sourceforge/pebble/domain/State.__Descendant_Table[net/sourceforge/pebble/domain/State]
    //#input(void net.sourceforge.pebble.domain.StaticPage(Blog)): net/sourceforge/pebble/domain/State.__Descendant_Table[others]
    //#input(void net.sourceforge.pebble.domain.StaticPage(Blog)): net/sourceforge/pebble/domain/State.__Dispatch_Table.equals(Ljava/lang/Object;)Z
    //#input(void net.sourceforge.pebble.domain.StaticPage(Blog)): net/sourceforge/pebble/domain/State.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(void net.sourceforge.pebble.domain.StaticPage(Blog)): this
    //#input(void net.sourceforge.pebble.domain.StaticPage(Blog)): this.__Tag
    //#output(void net.sourceforge.pebble.domain.StaticPage(Blog)): new ArrayList(Content#1) num objects
    //#output(void net.sourceforge.pebble.domain.StaticPage(Blog)): new ArrayList(Content#3) num objects
    //#output(void net.sourceforge.pebble.domain.StaticPage(Blog)): new Date(PageBasedContent#2) num objects
    //#output(void net.sourceforge.pebble.domain.StaticPage(Blog)): new LinkedList(PageBasedContent#1) num objects
    //#output(void net.sourceforge.pebble.domain.StaticPage(Blog)): new PropertyChangeSupport(Content#2) num objects
    //#output(void net.sourceforge.pebble.domain.StaticPage(Blog)): this.__Tag
    //#output(void net.sourceforge.pebble.domain.StaticPage(Blog)): this.author
    //#output(void net.sourceforge.pebble.domain.StaticPage(Blog)): this.blog
    //#output(void net.sourceforge.pebble.domain.StaticPage(Blog)): this.body
    //#output(void net.sourceforge.pebble.domain.StaticPage(Blog)): this.date
    //#output(void net.sourceforge.pebble.domain.StaticPage(Blog)): this.events
    //#output(void net.sourceforge.pebble.domain.StaticPage(Blog)): this.eventsEnabled
    //#output(void net.sourceforge.pebble.domain.StaticPage(Blog)): this.id
    //#output(void net.sourceforge.pebble.domain.StaticPage(Blog)): this.lockedBy
    //#output(void net.sourceforge.pebble.domain.StaticPage(Blog)): this.permalink
    //#output(void net.sourceforge.pebble.domain.StaticPage(Blog)): this.persistent
    //#output(void net.sourceforge.pebble.domain.StaticPage(Blog)): this.propertyChangeEvents
    //#output(void net.sourceforge.pebble.domain.StaticPage(Blog)): this.propertyChangeSupport
    //#output(void net.sourceforge.pebble.domain.StaticPage(Blog)): this.state
    //#output(void net.sourceforge.pebble.domain.StaticPage(Blog)): this.subtitle
    //#output(void net.sourceforge.pebble.domain.StaticPage(Blog)): this.tags
    //#output(void net.sourceforge.pebble.domain.StaticPage(Blog)): this.tagsAsCommaSeparated
    //#output(void net.sourceforge.pebble.domain.StaticPage(Blog)): this.tagsAsList
    //#output(void net.sourceforge.pebble.domain.StaticPage(Blog)): this.template
    //#output(void net.sourceforge.pebble.domain.StaticPage(Blog)): this.title
    //#new obj(void net.sourceforge.pebble.domain.StaticPage(Blog)): new ArrayList(Content#1)
    //#new obj(void net.sourceforge.pebble.domain.StaticPage(Blog)): new ArrayList(Content#3)
    //#new obj(void net.sourceforge.pebble.domain.StaticPage(Blog)): new Date(PageBasedContent#2)
    //#new obj(void net.sourceforge.pebble.domain.StaticPage(Blog)): new LinkedList(PageBasedContent#1)
    //#new obj(void net.sourceforge.pebble.domain.StaticPage(Blog)): new PropertyChangeSupport(Content#2)
    //#pre[4] (void net.sourceforge.pebble.domain.StaticPage(Blog)): this.__Tag == net/sourceforge/pebble/domain/StaticPage
    //#post(void net.sourceforge.pebble.domain.StaticPage(Blog)): this.__Tag == net/sourceforge/pebble/domain/StaticPage
    //#post(void net.sourceforge.pebble.domain.StaticPage(Blog)): this.author == &""
    //#post(void net.sourceforge.pebble.domain.StaticPage(Blog)): this.body == &""
    //#post(void net.sourceforge.pebble.domain.StaticPage(Blog)): this.subtitle == &""
    //#post(void net.sourceforge.pebble.domain.StaticPage(Blog)): this.tags == &""
    //#post(void net.sourceforge.pebble.domain.StaticPage(Blog)): this.tagsAsCommaSeparated == &""
    //#post(void net.sourceforge.pebble.domain.StaticPage(Blog)): this.title == &""
    //#post(void net.sourceforge.pebble.domain.StaticPage(Blog)): this.blog == blog
    //#post(void net.sourceforge.pebble.domain.StaticPage(Blog)): init'ed(this.blog)
    //#post(void net.sourceforge.pebble.domain.StaticPage(Blog)): init'ed(this.date)
    //#post(void net.sourceforge.pebble.domain.StaticPage(Blog)): this.events == &new ArrayList(Content#1)
    //#post(void net.sourceforge.pebble.domain.StaticPage(Blog)): init'ed(this.eventsEnabled)
    //#post(void net.sourceforge.pebble.domain.StaticPage(Blog)): possibly_updated(this.id)
    //#post(void net.sourceforge.pebble.domain.StaticPage(Blog)): init'ed(this.lockedBy)
    //#post(void net.sourceforge.pebble.domain.StaticPage(Blog)): this.permalink == One-of{null, undefined}
    //#post(void net.sourceforge.pebble.domain.StaticPage(Blog)): this.permalink == null
    //#post(void net.sourceforge.pebble.domain.StaticPage(Blog)): init'ed(this.persistent)
    //#post(void net.sourceforge.pebble.domain.StaticPage(Blog)): this.propertyChangeEvents == &new ArrayList(Content#3)
    //#post(void net.sourceforge.pebble.domain.StaticPage(Blog)): this.propertyChangeSupport == &new PropertyChangeSupport(Content#2)
    //#post(void net.sourceforge.pebble.domain.StaticPage(Blog)): this.state == &net.sourceforge.pebble.domain.State__static_init.new State(State__static_init#5)
    //#post(void net.sourceforge.pebble.domain.StaticPage(Blog)): this.tagsAsList == &new LinkedList(PageBasedContent#1)
    //#post(void net.sourceforge.pebble.domain.StaticPage(Blog)): this.template == &"template"
    //#post(void net.sourceforge.pebble.domain.StaticPage(Blog)): new ArrayList(Content#1) num objects == 1
    //#post(void net.sourceforge.pebble.domain.StaticPage(Blog)): new ArrayList(Content#3) num objects == 1
    //#post(void net.sourceforge.pebble.domain.StaticPage(Blog)): new Date(PageBasedContent#2) num objects == 1
    //#post(void net.sourceforge.pebble.domain.StaticPage(Blog)): new LinkedList(PageBasedContent#1) num objects == 1
    //#post(void net.sourceforge.pebble.domain.StaticPage(Blog)): new PropertyChangeSupport(Content#2) num objects == 1
    //#unanalyzed(void net.sourceforge.pebble.domain.StaticPage(Blog)): Effects-of-calling:java.beans.PropertyChangeSupport:firePropertyChange
    //#unanalyzed(void net.sourceforge.pebble.domain.StaticPage(Blog)): Effects-of-calling:java.lang.StringBuilder
    //#unanalyzed(void net.sourceforge.pebble.domain.StaticPage(Blog)): Effects-of-calling:java.util.Date:getTime
    //#unanalyzed(void net.sourceforge.pebble.domain.StaticPage(Blog)): Effects-of-calling:java.lang.StringBuilder:append
    //#unanalyzed(void net.sourceforge.pebble.domain.StaticPage(Blog)): Effects-of-calling:java.lang.StringBuilder:toString
    //#unanalyzed(void net.sourceforge.pebble.domain.StaticPage(Blog)): Effects-of-calling:java.util.ArrayList
    //#unanalyzed(void net.sourceforge.pebble.domain.StaticPage(Blog)): Effects-of-calling:java.beans.PropertyChangeSupport
    //#unanalyzed(void net.sourceforge.pebble.domain.StaticPage(Blog)): Effects-of-calling:java.beans.PropertyChangeSupport:addPropertyChangeListener
    //#unanalyzed(void net.sourceforge.pebble.domain.StaticPage(Blog)): Effects-of-calling:java.util.LinkedList
    //#unanalyzed(void net.sourceforge.pebble.domain.StaticPage(Blog)): Effects-of-calling:java.util.Date
    //#unanalyzed(void net.sourceforge.pebble.domain.StaticPage(Blog)): Effects-of-calling:setDate
    //#unanalyzed(void net.sourceforge.pebble.domain.StaticPage(Blog)): Effects-of-calling:setState
    //#unanalyzed(void net.sourceforge.pebble.domain.StaticPage(Blog)): Effects-of-calling:java.lang.String:equals
    //#unanalyzed(void net.sourceforge.pebble.domain.StaticPage(Blog)): Effects-of-calling:net.sourceforge.pebble.api.event.PebbleEvent
    //#unanalyzed(void net.sourceforge.pebble.domain.StaticPage(Blog)): Effects-of-calling:java.util.List:add
    //#unanalyzed(void net.sourceforge.pebble.domain.StaticPage(Blog)): Effects-of-calling:java.util.EventObject
    setPublished(true);
  }
    //#staticpage.java:64: end of method: void net.sourceforge.pebble.domain.StaticPage.net.sourceforge.pebble.domain.StaticPage(Blog)

  public String getName() {
    return name;
    //#staticpage.java:67: method: String net.sourceforge.pebble.domain.StaticPage.getName()
    //#input(String getName()): this
    //#input(String getName()): this.name
    //#output(String getName()): return_value
    //#pre[2] (String getName()): init'ed(this.name)
    //#post(String getName()): return_value == this.name
    //#post(String getName()): init'ed(return_value)
    //#staticpage.java:67: end of method: String net.sourceforge.pebble.domain.StaticPage.getName()
  }

  public void setName(String name) {
    this.name = StringUtils.transformHTML(name);
    //#staticpage.java:71: method: void net.sourceforge.pebble.domain.StaticPage.setName(String)
    //#staticpage.java:71: Warning: method not available
    //#    -- call on String net.sourceforge.pebble.util.StringUtils:transformHTML(String)
    //#    severity: INFORMATIONAL
    //#    class: net.sourceforge.pebble.domain.StaticPage
    //#    method: void setName(String)
    //#    unanalyzed callee: String net.sourceforge.pebble.util.StringUtils:transformHTML(String)
    //#input(void setName(String)): name
    //#input(void setName(String)): this
    //#output(void setName(String)): this.name
    //#post(void setName(String)): init'ed(this.name)
  }
    //#staticpage.java:72: end of method: void net.sourceforge.pebble.domain.StaticPage.setName(String)

  /**
   * Gets a list of all tags.
   *
   * @return  a List of tags
   */
  public List<Tag> getAllTags() {
    List<Tag> list = new ArrayList<Tag>(getTagsAsList());
    //#staticpage.java:80: method: List net.sourceforge.pebble.domain.StaticPage.getAllTags()
    //#input(List getAllTags()): __Descendant_Table[net/sourceforge/pebble/domain/StaticPage]
    //#input(List getAllTags()): __Descendant_Table[others]
    //#input(List getAllTags()): __Dispatch_Table.getTagsAsList()Ljava/util/List;
    //#input(List getAllTags()): this
    //#input(List getAllTags()): this.__Tag
    //#input(List getAllTags()): this.tagsAsList
    //#output(List getAllTags()): new ArrayList(getAllTags#1) num objects
    //#output(List getAllTags()): return_value
    //#new obj(List getAllTags()): new ArrayList(getAllTags#1)
    //#pre[2] (List getAllTags()): this.__Tag == net/sourceforge/pebble/domain/StaticPage
    //#pre[3] (List getAllTags()): init'ed(this.tagsAsList)
    //#post(List getAllTags()): return_value == &new ArrayList(getAllTags#1)
    //#post(List getAllTags()): new ArrayList(getAllTags#1) num objects == 1
    Collections.sort(list);

    return list;
    //#staticpage.java:83: end of method: List net.sourceforge.pebble.domain.StaticPage.getAllTags()
  }

  /**
   * Gets a permalink for this blog entry that is local to the blog. In other
   * words, it doesn't take into account the original permalink for
   * aggregated content.
   *
   * @return an absolute URL as a String
   */
  public String getLocalPermalink() {
    return getBlog().getUrl() + "pages/" + name + ".html";
    //#staticpage.java:94: method: String net.sourceforge.pebble.domain.StaticPage.getLocalPermalink()
    //#input(String getLocalPermalink()): __Descendant_Table[net/sourceforge/pebble/domain/StaticPage]
    //#input(String getLocalPermalink()): __Descendant_Table[others]
    //#input(String getLocalPermalink()): __Dispatch_Table.getBlog()Lnet/sourceforge/pebble/domain/Blog;
    //#input(String getLocalPermalink()): net/sourceforge/pebble/Configuration.__Descendant_Table[net/sourceforge/pebble/Configuration]
    //#input(String getLocalPermalink()): net/sourceforge/pebble/Configuration.__Descendant_Table[others]
    //#input(String getLocalPermalink()): net/sourceforge/pebble/Configuration.__Dispatch_Table.getUrl()Ljava/lang/String;
    //#input(String getLocalPermalink()): net/sourceforge/pebble/Configuration.__Dispatch_Table.isVirtualHostingEnabled()Z
    //#input(String getLocalPermalink()): net/sourceforge/pebble/domain/Blog.__Descendant_Table[net/sourceforge/pebble/domain/Blog]
    //#input(String getLocalPermalink()): net/sourceforge/pebble/domain/Blog.__Descendant_Table[others]
    //#input(String getLocalPermalink()): net/sourceforge/pebble/domain/Blog.__Dispatch_Table.getId()Ljava/lang/String;
    //#input(String getLocalPermalink()): net/sourceforge/pebble/domain/Blog.__Dispatch_Table.getUrl()Ljava/lang/String;
    //#input(String getLocalPermalink()): net/sourceforge/pebble/domain/BlogManager.__Descendant_Table[net/sourceforge/pebble/domain/BlogManager]
    //#input(String getLocalPermalink()): net/sourceforge/pebble/domain/BlogManager.__Descendant_Table[others]
    //#input(String getLocalPermalink()): net/sourceforge/pebble/domain/BlogManager.__Dispatch_Table.isMultiBlog()Z
    //#input(String getLocalPermalink()): net/sourceforge/pebble/domain/BlogManager.instance
    //#input(String getLocalPermalink()): net/sourceforge/pebble/domain/BlogManager.instance.__Tag
    //#input(String getLocalPermalink()): net/sourceforge/pebble/domain/BlogManager.instance.multiBlog
    //#input(String getLocalPermalink()): this
    //#input(String getLocalPermalink()): this.__Tag
    //#input(String getLocalPermalink()): this.blog
    //#input(String getLocalPermalink()): this.blog.__Tag
    //#input(String getLocalPermalink()): this.blog.id
    //#input(String getLocalPermalink()): this.name
    //#output(String getLocalPermalink()): return_value
    //#pre[5] (String getLocalPermalink()): this.__Tag == net/sourceforge/pebble/domain/StaticPage
    //#pre[6] (String getLocalPermalink()): this.blog != null
    //#pre[9] (String getLocalPermalink()): init'ed(this.name)
    //#pre[1] (String getLocalPermalink()): (soft) net/sourceforge/pebble/domain/BlogManager.instance != null
    //#pre[2] (String getLocalPermalink()): (soft) net/sourceforge/pebble/domain/BlogManager.instance.__Tag == net/sourceforge/pebble/domain/BlogManager
    //#pre[3] (String getLocalPermalink()): (soft) init'ed(net/sourceforge/pebble/domain/BlogManager.instance.multiBlog)
    //#pre[7] (String getLocalPermalink()): (soft) this.blog.__Tag == net/sourceforge/pebble/domain/Blog
    //#pre[8] (String getLocalPermalink()): (soft) init'ed(this.blog.id)
    //#post(String getLocalPermalink()): return_value != null
    //#unanalyzed(String getLocalPermalink()): Effects-of-calling:java.lang.StringBuilder
    //#unanalyzed(String getLocalPermalink()): Effects-of-calling:java.lang.StringBuilder:append
    //#unanalyzed(String getLocalPermalink()): Effects-of-calling:java.lang.StringBuilder:toString
    //#unanalyzed(String getLocalPermalink()): Effects-of-calling:java.lang.String:valueOf
    //#unanalyzed(String getLocalPermalink()): Effects-of-calling:java.lang.String:indexOf
    //#unanalyzed(String getLocalPermalink()): Effects-of-calling:net.sourceforge.pebble.PebbleContext:getInstance
    //#unanalyzed(String getLocalPermalink()): Effects-of-calling:net.sourceforge.pebble.PebbleContext:getConfiguration
    //#unanalyzed(String getLocalPermalink()): Effects-of-calling:java.lang.String:length
    //#unanalyzed(String getLocalPermalink()): Effects-of-calling:java.lang.String:substring
    //#staticpage.java:94: end of method: String net.sourceforge.pebble.domain.StaticPage.getLocalPermalink()
  }

  public void validate(ValidationContext context) {
	// TODO: localize
    if (name == null || name.length() == 0) {
    //#staticpage.java:99: method: void net.sourceforge.pebble.domain.StaticPage.validate(ValidationContext)
    //#input(void validate(ValidationContext)): __Descendant_Table[net/sourceforge/pebble/domain/StaticPage]
    //#input(void validate(ValidationContext)): __Descendant_Table[others]
    //#input(void validate(ValidationContext)): __Dispatch_Table.getBlog()Lnet/sourceforge/pebble/domain/Blog;
    //#input(void validate(ValidationContext)): __Dispatch_Table.getId()Ljava/lang/String;
    //#input(void validate(ValidationContext)): context
    //#input(void validate(ValidationContext)): net/sourceforge/pebble/domain/Blog.__Descendant_Table[net/sourceforge/pebble/domain/Blog]
    //#input(void validate(ValidationContext)): net/sourceforge/pebble/domain/Blog.__Descendant_Table[others]
    //#input(void validate(ValidationContext)): net/sourceforge/pebble/domain/Blog.__Dispatch_Table.getStaticPageIndex()Lnet/sourceforge/pebble/index/StaticPageIndex;
    //#input(void validate(ValidationContext)): net/sourceforge/pebble/index/StaticPageIndex.__Descendant_Table[net/sourceforge/pebble/index/StaticPageIndex]
    //#input(void validate(ValidationContext)): net/sourceforge/pebble/index/StaticPageIndex.__Descendant_Table[others]
    //#input(void validate(ValidationContext)): net/sourceforge/pebble/index/StaticPageIndex.__Dispatch_Table.getStaticPage(Ljava/lang/String;)Ljava/lang/String;
    //#input(void validate(ValidationContext)): this
    //#input(void validate(ValidationContext)): this.__Tag
    //#input(void validate(ValidationContext)): this.blog
    //#input(void validate(ValidationContext)): this.blog.__Tag
    //#input(void validate(ValidationContext)): this.blog.staticPageIndex
    //#input(void validate(ValidationContext)): this.blog.staticPageIndex.__Tag
    //#input(void validate(ValidationContext)): this.blog.staticPageIndex.index
    //#input(void validate(ValidationContext)): this.id
    //#input(void validate(ValidationContext)): this.name
    //#pre[3] (void validate(ValidationContext)): this.__Tag == net/sourceforge/pebble/domain/StaticPage
    //#pre[4] (void validate(ValidationContext)): this.blog != null
    //#pre[5] (void validate(ValidationContext)): this.blog.__Tag == net/sourceforge/pebble/domain/Blog
    //#pre[6] (void validate(ValidationContext)): this.blog.staticPageIndex != null
    //#pre[7] (void validate(ValidationContext)): this.blog.staticPageIndex.__Tag == net/sourceforge/pebble/index/StaticPageIndex
    //#pre[8] (void validate(ValidationContext)): this.blog.staticPageIndex.index != null
    //#pre[10] (void validate(ValidationContext)): init'ed(this.name)
    //#pre[1] (void validate(ValidationContext)): (soft) context != null
    //#pre[9] (void validate(ValidationContext)): (soft) init'ed(this.id)
    //#unanalyzed(void validate(ValidationContext)): Effects-of-calling:java.util.Map:get
    //#test_vector(void validate(ValidationContext)): this.name: Addr_Set{null}, Inverse{null}
    //#test_vector(void validate(ValidationContext)): java.lang.String:equals(...)@106: {1}, {0}
    //#test_vector(void validate(ValidationContext)): java.lang.String:length(...)@99: {1..4_294_967_295}, {0}
    //#test_vector(void validate(ValidationContext)): java.lang.String:matches(...)@101: {1}, {0}
    //#test_vector(void validate(ValidationContext)): java.util.Map:get(...)@208: Addr_Set{null}, Inverse{null}
      context.addError("Name cannot be empty");
    //#staticpage.java:100: Warning: method not available
    //#    -- call on void net.sourceforge.pebble.web.validation.ValidationContext:addError(String)
    //#    severity: INFORMATIONAL
    //#    class: net.sourceforge.pebble.domain.StaticPage
    //#    method: void validate(ValidationContext)
    //#    unanalyzed callee: void net.sourceforge.pebble.web.validation.ValidationContext:addError(String)
    } else if (!name.matches("[\\w_/-]+")) {
      context.addError("Name \"" + StringUtils.transformHTML(name) + "\" must contain only A-Za-z0-9_-/");
    //#staticpage.java:102: Warning: method not available
    //#    -- call on String net.sourceforge.pebble.util.StringUtils:transformHTML(String)
    //#    severity: INFORMATIONAL
    //#    class: net.sourceforge.pebble.domain.StaticPage
    //#    method: void validate(ValidationContext)
    //#    unanalyzed callee: String net.sourceforge.pebble.util.StringUtils:transformHTML(String)
    //#staticpage.java:102: Warning: method not available
    //#    -- call on void net.sourceforge.pebble.web.validation.ValidationContext:addError(String)
    //#    severity: INFORMATIONAL
    //#    class: net.sourceforge.pebble.domain.StaticPage
    //#    method: void validate(ValidationContext)
    //#    unanalyzed callee: void net.sourceforge.pebble.web.validation.ValidationContext:addError(String)
    }

    String id = getBlog().getStaticPageIndex().getStaticPage(name);
    if (id != null && !id.equals(getId())) {
      context.addError("A page with the name \"" + name + "\" already exists");
    //#staticpage.java:107: Warning: method not available
    //#    -- call on void net.sourceforge.pebble.web.validation.ValidationContext:addError(String)
    //#    severity: INFORMATIONAL
    //#    class: net.sourceforge.pebble.domain.StaticPage
    //#    method: void validate(ValidationContext)
    //#    unanalyzed callee: void net.sourceforge.pebble.web.validation.ValidationContext:addError(String)
    }
  }
    //#staticpage.java:109: end of method: void net.sourceforge.pebble.domain.StaticPage.validate(ValidationContext)

  public String getGuid() {
    return "page/" + getBlog().getId() + "/" + getId();
    //#staticpage.java:112: method: String net.sourceforge.pebble.domain.StaticPage.getGuid()
    //#input(String getGuid()): __Descendant_Table[net/sourceforge/pebble/domain/StaticPage]
    //#input(String getGuid()): __Descendant_Table[others]
    //#input(String getGuid()): __Dispatch_Table.getBlog()Lnet/sourceforge/pebble/domain/Blog;
    //#input(String getGuid()): __Dispatch_Table.getId()Ljava/lang/String;
    //#input(String getGuid()): net/sourceforge/pebble/domain/Blog.__Descendant_Table[net/sourceforge/pebble/domain/Blog]
    //#input(String getGuid()): net/sourceforge/pebble/domain/Blog.__Descendant_Table[others]
    //#input(String getGuid()): net/sourceforge/pebble/domain/Blog.__Dispatch_Table.getId()Ljava/lang/String;
    //#input(String getGuid()): this
    //#input(String getGuid()): this.__Tag
    //#input(String getGuid()): this.blog
    //#input(String getGuid()): this.blog.__Tag
    //#input(String getGuid()): this.blog.id
    //#input(String getGuid()): this.id
    //#output(String getGuid()): return_value
    //#pre[2] (String getGuid()): this.__Tag == net/sourceforge/pebble/domain/StaticPage
    //#pre[3] (String getGuid()): this.blog != null
    //#pre[4] (String getGuid()): this.blog.__Tag == net/sourceforge/pebble/domain/Blog
    //#pre[5] (String getGuid()): init'ed(this.blog.id)
    //#pre[6] (String getGuid()): init'ed(this.id)
    //#post(String getGuid()): return_value != null
    //#staticpage.java:112: end of method: String net.sourceforge.pebble.domain.StaticPage.getGuid()
  }

  public void setTemplate(String newTemplate) {
    propertyChangeSupport.firePropertyChange(TEMPLATE_PROPERTY, template, newTemplate);
    //#staticpage.java:116: method: void net.sourceforge.pebble.domain.StaticPage.setTemplate(String)
    //#input(void setTemplate(String)): newTemplate
    //#input(void setTemplate(String)): this
    //#input(void setTemplate(String)): this.propertyChangeSupport
    //#input(void setTemplate(String)): this.template
    //#output(void setTemplate(String)): this.template
    //#pre[2] (void setTemplate(String)): init'ed(this.template)
    //#pre[4] (void setTemplate(String)): this.propertyChangeSupport != null
    //#post(void setTemplate(String)): this.template == newTemplate
    //#post(void setTemplate(String)): init'ed(this.template)
    this.template = newTemplate;
  }
    //#staticpage.java:118: end of method: void net.sourceforge.pebble.domain.StaticPage.setTemplate(String)
  
  public String getTemplate() {
    return template;
    //#staticpage.java:121: method: String net.sourceforge.pebble.domain.StaticPage.getTemplate()
    //#input(String getTemplate()): this
    //#input(String getTemplate()): this.template
    //#output(String getTemplate()): return_value
    //#pre[2] (String getTemplate()): init'ed(this.template)
    //#post(String getTemplate()): return_value == this.template
    //#post(String getTemplate()): init'ed(return_value)
    //#staticpage.java:121: end of method: String net.sourceforge.pebble.domain.StaticPage.getTemplate()
  }
  
  /**
   * Indicates whether some other object is "equal to" this one.
   *
   * @param o   the reference object with which to compare.
   * @return <code>true</code> if this object is the same as the obj
   *         argument; <code>false</code> otherwise.
   * @see #hashCode()
   * @see java.util.Hashtable
   */
  public boolean equals(Object o) {
    if (this == o) {
    //#staticpage.java:134: method: bool net.sourceforge.pebble.domain.StaticPage.equals(Object)
    //#input(bool equals(Object)): __Descendant_Table[net/sourceforge/pebble/domain/StaticPage]
    //#input(bool equals(Object)): __Descendant_Table[others]
    //#input(bool equals(Object)): __Dispatch_Table.getBlog()Lnet/sourceforge/pebble/domain/Blog;
    //#input(bool equals(Object)): __Dispatch_Table.getGuid()Ljava/lang/String;
    //#input(bool equals(Object)): __Dispatch_Table.getId()Ljava/lang/String;
    //#input(bool equals(Object)): net/sourceforge/pebble/domain/Blog.__Descendant_Table[net/sourceforge/pebble/domain/Blog]
    //#input(bool equals(Object)): net/sourceforge/pebble/domain/Blog.__Descendant_Table[others]
    //#input(bool equals(Object)): net/sourceforge/pebble/domain/Blog.__Dispatch_Table.getId()Ljava/lang/String;
    //#input(bool equals(Object)): o
    //#input(bool equals(Object)): o.__Tag
    //#input(bool equals(Object)): o.blog
    //#input(bool equals(Object)): o.blog.__Tag
    //#input(bool equals(Object)): o.blog.id
    //#input(bool equals(Object)): o.id
    //#input(bool equals(Object)): this
    //#input(bool equals(Object)): this.__Tag
    //#input(bool equals(Object)): this.blog
    //#input(bool equals(Object)): this.blog.__Tag
    //#input(bool equals(Object)): this.blog.id
    //#input(bool equals(Object)): this.id
    //#output(bool equals(Object)): return_value
    //#pre[5] (bool equals(Object)): (soft) o.blog != null
    //#pre[6] (bool equals(Object)): (soft) o.blog.__Tag == net/sourceforge/pebble/domain/Blog
    //#pre[7] (bool equals(Object)): (soft) init'ed(o.blog.id)
    //#pre[8] (bool equals(Object)): (soft) init'ed(o.id)
    //#pre[11] (bool equals(Object)): (soft) this.__Tag == net/sourceforge/pebble/domain/StaticPage
    //#pre[12] (bool equals(Object)): (soft) this.blog != null
    //#pre[13] (bool equals(Object)): (soft) this.blog.__Tag == net/sourceforge/pebble/domain/Blog
    //#pre[14] (bool equals(Object)): (soft) init'ed(this.blog.id)
    //#pre[15] (bool equals(Object)): (soft) init'ed(this.id)
    //#post(bool equals(Object)): init'ed(return_value)
    //#unanalyzed(bool equals(Object)): Effects-of-calling:getBlog
    //#unanalyzed(bool equals(Object)): Effects-of-calling:java.lang.StringBuilder
    //#unanalyzed(bool equals(Object)): Effects-of-calling:java.lang.StringBuilder:append
    //#unanalyzed(bool equals(Object)): Effects-of-calling:java.lang.StringBuilder:toString
    //#unanalyzed(bool equals(Object)): Effects-of-calling:getId
    //#test_vector(bool equals(Object)): this == o: {0}, {1}
      return true;
    }

    if (!(o instanceof StaticPage)) {
      return false;
    }

    StaticPage staticPage = (StaticPage)o;
    return getGuid().equals(staticPage.getGuid());
    //#staticpage.java:143: end of method: bool net.sourceforge.pebble.domain.StaticPage.equals(Object)
  }

  /**
   * Creates and returns a copy of this object.
   *
   * @return a clone of this instance.
   * @see Cloneable
   */
  public Object clone() {
    StaticPage page = new StaticPage(getBlog());
    //#staticpage.java:153: method: Object net.sourceforge.pebble.domain.StaticPage.clone()
    //#input(Object clone()): __Descendant_Table[net/sourceforge/pebble/domain/StaticPage]
    //#input(Object clone()): __Descendant_Table[others]
    //#input(Object clone()): __Dispatch_Table.getAllTags()Ljava/util/List;
    //#input(Object clone()): __Dispatch_Table.getAuthor()Ljava/lang/String;
    //#input(Object clone()): __Dispatch_Table.getBlog()Lnet/sourceforge/pebble/domain/Blog;
    //#input(Object clone()): __Dispatch_Table.getBody()Ljava/lang/String;
    //#input(Object clone()): __Dispatch_Table.getDate()Ljava/util/Date;
    //#input(Object clone()): __Dispatch_Table.getLockedBy()Ljava/lang/String;
    //#input(Object clone()): __Dispatch_Table.getName()Ljava/lang/String;
    //#input(Object clone()): __Dispatch_Table.getOriginalPermalink()Ljava/lang/String;
    //#input(Object clone()): __Dispatch_Table.getState()Lnet/sourceforge/pebble/domain/State;
    //#input(Object clone()): __Dispatch_Table.getSubtitle()Ljava/lang/String;
    //#input(Object clone()): __Dispatch_Table.getTags()Ljava/lang/String;
    //#input(Object clone()): __Dispatch_Table.getTagsAsList()Ljava/util/List;
    //#input(Object clone()): __Dispatch_Table.getTemplate()Ljava/lang/String;
    //#input(Object clone()): __Dispatch_Table.getTitle()Ljava/lang/String;
    //#input(Object clone()): __Dispatch_Table.isPersistent()Z
    //#input(Object clone()): __Dispatch_Table.setAuthor(Ljava/lang/String;)V
    //#input(Object clone()): __Dispatch_Table.setBody(Ljava/lang/String;)V
    //#input(Object clone()): __Dispatch_Table.setDate(Ljava/util/Date;)V
    //#input(Object clone()): __Dispatch_Table.setEventsEnabled(Z)V
    //#input(Object clone()): __Dispatch_Table.setLockedBy(Ljava/lang/String;)V
    //#input(Object clone()): __Dispatch_Table.setName(Ljava/lang/String;)V
    //#input(Object clone()): __Dispatch_Table.setOriginalPermalink(Ljava/lang/String;)V
    //#input(Object clone()): __Dispatch_Table.setPersistent(Z)V
    //#input(Object clone()): __Dispatch_Table.setPublished(Z)V
    //#input(Object clone()): __Dispatch_Table.setState(Lnet/sourceforge/pebble/domain/State;)V
    //#input(Object clone()): __Dispatch_Table.setSubtitle(Ljava/lang/String;)V
    //#input(Object clone()): __Dispatch_Table.setTags(Ljava/lang/String;)V
    //#input(Object clone()): __Dispatch_Table.setTemplate(Ljava/lang/String;)V
    //#input(Object clone()): __Dispatch_Table.setTitle(Ljava/lang/String;)V
    //#input(Object clone()): net.sourceforge.pebble.domain.State__static_init.new State(State__static_init#4).__Tag
    //#input(Object clone()): net.sourceforge.pebble.domain.State__static_init.new State(State__static_init#5).__Tag
    //#input(Object clone()): net/sourceforge/pebble/domain/Blog.__Descendant_Table[net/sourceforge/pebble/domain/Blog]
    //#input(Object clone()): net/sourceforge/pebble/domain/Blog.__Descendant_Table[others]
    //#input(Object clone()): net/sourceforge/pebble/domain/Blog.__Dispatch_Table.getRootCategory()Lnet/sourceforge/pebble/domain/Category;
    //#input(Object clone()): net/sourceforge/pebble/domain/BlogEntry.__Descendant_Table[net/sourceforge/pebble/domain/BlogEntry]
    //#input(Object clone()): net/sourceforge/pebble/domain/BlogEntry.__Descendant_Table[others]
    //#input(Object clone()): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.addEvent(Lnet/sourceforge/pebble/api/event/PebbleEvent;)V
    //#input(Object clone()): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.areEventsEnabled()Z
    //#input(Object clone()): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.getAllTags()Ljava/util/List;
    //#input(Object clone()): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.getBlog()Lnet/sourceforge/pebble/domain/Blog;
    //#input(Object clone()): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.getCategories()Ljava/util/Set;
    //#input(Object clone()): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.getState()Lnet/sourceforge/pebble/domain/State;
    //#input(Object clone()): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.getTagsAsList()Ljava/util/List;
    //#input(Object clone()): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.isPublished()Z
    //#input(Object clone()): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.isUnpublished()Z
    //#input(Object clone()): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.setDate(Ljava/util/Date;)V
    //#input(Object clone()): net/sourceforge/pebble/domain/BlogEntry.__Dispatch_Table.setState(Lnet/sourceforge/pebble/domain/State;)V
    //#input(Object clone()): net/sourceforge/pebble/domain/Category.__Descendant_Table[net/sourceforge/pebble/domain/Category]
    //#input(Object clone()): net/sourceforge/pebble/domain/Category.__Descendant_Table[others]
    //#input(Object clone()): net/sourceforge/pebble/domain/Category.__Dispatch_Table.getAllTags()Ljava/util/List;
    //#input(Object clone()): net/sourceforge/pebble/domain/Category.__Dispatch_Table.getParent()Lnet/sourceforge/pebble/domain/Category;
    //#input(Object clone()): net/sourceforge/pebble/domain/Category.__Dispatch_Table.getTagsAsList()Ljava/util/List;
    //#input(Object clone()): net/sourceforge/pebble/domain/PageBasedContent.__Descendant_Table[net/sourceforge/pebble/domain/BlogEntry]
    //#input(Object clone()): net/sourceforge/pebble/domain/PageBasedContent.__Descendant_Table[net/sourceforge/pebble/domain/PageBasedContent]
    //#input(Object clone()): net/sourceforge/pebble/domain/PageBasedContent.__Descendant_Table[net/sourceforge/pebble/domain/StaticPage]
    //#input(Object clone()): net/sourceforge/pebble/domain/PageBasedContent.__Descendant_Table[others]
    //#input(Object clone()): net/sourceforge/pebble/domain/PageBasedContent.__Dispatch_Table.getAllTags()Ljava/util/List;
    //#input(Object clone()): net/sourceforge/pebble/domain/PageBasedContent.__Dispatch_Table.getBlog()Lnet/sourceforge/pebble/domain/Blog;
    //#input(Object clone()): net/sourceforge/pebble/domain/PageBasedContent.__Dispatch_Table.getState()Lnet/sourceforge/pebble/domain/State;
    //#input(Object clone()): net/sourceforge/pebble/domain/PageBasedContent.__Dispatch_Table.setDate(Ljava/util/Date;)V
    //#input(Object clone()): net/sourceforge/pebble/domain/PageBasedContent.__Dispatch_Table.setState(Lnet/sourceforge/pebble/domain/State;)V
    //#input(Object clone()): net/sourceforge/pebble/domain/State.PUBLISHED
    //#input(Object clone()): net/sourceforge/pebble/domain/State.UNPUBLISHED
    //#input(Object clone()): net/sourceforge/pebble/domain/State.__Descendant_Table[net/sourceforge/pebble/domain/State]
    //#input(Object clone()): net/sourceforge/pebble/domain/State.__Descendant_Table[others]
    //#input(Object clone()): net/sourceforge/pebble/domain/State.__Dispatch_Table.equals(Ljava/lang/Object;)Z
    //#input(Object clone()): net/sourceforge/pebble/domain/State.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(Object clone()): net/sourceforge/pebble/domain/Tag.__Descendant_Table[net/sourceforge/pebble/domain/Tag]
    //#input(Object clone()): net/sourceforge/pebble/domain/Tag.__Descendant_Table[net/sourceforge/pebble/index/IndexedTag]
    //#input(Object clone()): net/sourceforge/pebble/domain/Tag.__Descendant_Table[others]
    //#input(Object clone()): net/sourceforge/pebble/domain/Tag.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(Object clone()): net/sourceforge/pebble/domain/Tag.__Dispatch_Table.setName(Ljava/lang/String;)V
    //#input(Object clone()): net/sourceforge/pebble/index/IndexedTag.__Dispatch_Table.getName()Ljava/lang/String;
    //#input(Object clone()): net/sourceforge/pebble/index/IndexedTag.__Dispatch_Table.setName(Ljava/lang/String;)V
    //#input(Object clone()): this
    //#input(Object clone()): this.__Tag
    //#input(Object clone()): this.author
    //#input(Object clone()): this.blog
    //#input(Object clone()): this.blog.__Tag
    //#input(Object clone()): this.blog.rootCategory...__Tag
    //#input(Object clone()): this.blog.rootCategory.__Tag
    //#input(Object clone()): this.body
    //#input(Object clone()): this.date
    //#input(Object clone()): this.lockedBy
    //#input(Object clone()): this.name
    //#input(Object clone()): this.originalPermalink
    //#input(Object clone()): this.persistent
    //#input(Object clone()): this.state
    //#input(Object clone()): this.subtitle
    //#input(Object clone()): this.tags
    //#input(Object clone()): this.template
    //#input(Object clone()): this.title
    //#output(Object clone()): new ArrayList(Content#1) num objects
    //#output(Object clone()): new ArrayList(Content#3) num objects
    //#output(Object clone()): new ArrayList(parse#1) num objects
    //#output(Object clone()): new Date(PageBasedContent#2) num objects
    //#output(Object clone()): new LinkedList(PageBasedContent#1) num objects
    //#output(Object clone()): new PropertyChangeSupport(Content#2) num objects
    //#output(Object clone()): new StaticPage(clone#1) num objects
    //#output(Object clone()): return_value.__Tag
    //#output(Object clone()): return_value.author
    //#output(Object clone()): return_value.blog
    //#output(Object clone()): return_value.body
    //#output(Object clone()): return_value.categories
    //#output(Object clone()): return_value.date
    //#output(Object clone()): return_value.events
    //#output(Object clone()): return_value.eventsEnabled
    //#output(Object clone()): return_value.id
    //#output(Object clone()): return_value.lockedBy
    //#output(Object clone()): return_value.name
    //#output(Object clone()): return_value.originalPermalink
    //#output(Object clone()): return_value.permalink
    //#output(Object clone()): return_value.persistent
    //#output(Object clone()): return_value.propertyChangeEvents
    //#output(Object clone()): return_value.propertyChangeSupport
    //#output(Object clone()): return_value.state
    //#output(Object clone()): return_value.subtitle
    //#output(Object clone()): return_value.tags
    //#output(Object clone()): return_value.tagsAsCommaSeparated
    //#output(Object clone()): return_value.tagsAsList
    //#output(Object clone()): return_value.template
    //#output(Object clone()): return_value.title
    //#output(Object clone()): return_value
    //#new obj(Object clone()): new ArrayList(Content#1)
    //#new obj(Object clone()): new ArrayList(Content#3)
    //#new obj(Object clone()): new ArrayList(parse#1)
    //#new obj(Object clone()): new Date(PageBasedContent#2)
    //#new obj(Object clone()): new LinkedList(PageBasedContent#1)
    //#new obj(Object clone()): new PropertyChangeSupport(Content#2)
    //#new obj(Object clone()): new StaticPage(clone#1)
    //#pre[4] (Object clone()): this.__Tag == net/sourceforge/pebble/domain/StaticPage
    //#pre[5] (Object clone()): init'ed(this.author)
    //#pre[6] (Object clone()): init'ed(this.blog)
    //#pre[15] (Object clone()): init'ed(this.body)
    //#pre[16] (Object clone()): this.date != null
    //#pre[17] (Object clone()): init'ed(this.lockedBy)
    //#pre[18] (Object clone()): init'ed(this.name)
    //#pre[19] (Object clone()): init'ed(this.originalPermalink)
    //#pre[20] (Object clone()): init'ed(this.persistent)
    //#pre[21] (Object clone()): init'ed(this.state)
    //#pre[22] (Object clone()): init'ed(this.subtitle)
    //#pre[23] (Object clone()): init'ed(this.tags)
    //#pre[24] (Object clone()): init'ed(this.template)
    //#pre[25] (Object clone()): init'ed(this.title)
    //#post(Object clone()): return_value == &new StaticPage(clone#1)
    //#post(Object clone()): new ArrayList(Content#1) num objects == 1
    //#post(Object clone()): new ArrayList(Content#3) num objects == 1
    //#post(Object clone()): new ArrayList(parse#1) num objects == 1
    //#post(Object clone()): new Date(PageBasedContent#2) num objects == 1
    //#post(Object clone()): new LinkedList(PageBasedContent#1) num objects == 1
    //#post(Object clone()): new PropertyChangeSupport(Content#2) num objects == 1
    //#post(Object clone()): new StaticPage(clone#1) num objects == 1
    //#post(Object clone()): return_value.__Tag == net/sourceforge/pebble/domain/StaticPage
    //#post(Object clone()): init'ed(return_value.author)
    //#post(Object clone()): return_value.blog == this.blog
    //#post(Object clone()): init'ed(return_value.blog)
    //#post(Object clone()): return_value.body == this.body
    //#post(Object clone()): init'ed(return_value.body)
    //#post(Object clone()): init'ed(return_value.categories)
    //#post(Object clone()): return_value.date == this.date
    //#post(Object clone()): return_value.date != null
    //#post(Object clone()): return_value.events == &new ArrayList(Content#1)
    //#post(Object clone()): init'ed(return_value.eventsEnabled)
    //#post(Object clone()): return_value.id != null
    //#post(Object clone()): return_value.lockedBy == this.lockedBy
    //#post(Object clone()): init'ed(return_value.lockedBy)
    //#post(Object clone()): init'ed(return_value.name)
    //#post(Object clone()): init'ed(return_value.originalPermalink)
    //#post(Object clone()): init'ed(return_value.permalink)
    //#post(Object clone()): return_value.persistent == this.persistent
    //#post(Object clone()): init'ed(return_value.persistent)
    //#post(Object clone()): return_value.propertyChangeEvents == &new ArrayList(Content#3)
    //#post(Object clone()): return_value.propertyChangeSupport == &new PropertyChangeSupport(Content#2)
    //#post(Object clone()): return_value.state == this.state
    //#post(Object clone()): init'ed(return_value.state)
    //#post(Object clone()): return_value.subtitle == this.subtitle
    //#post(Object clone()): init'ed(return_value.subtitle)
    //#post(Object clone()): init'ed(return_value.tags)
    //#post(Object clone()): return_value.tagsAsCommaSeparated != null
    //#post(Object clone()): return_value.tagsAsList == &new ArrayList(parse#1)
    //#post(Object clone()): return_value.template == this.template
    //#post(Object clone()): init'ed(return_value.template)
    //#post(Object clone()): return_value.title == this.title
    //#post(Object clone()): init'ed(return_value.title)
    //#unanalyzed(Object clone()): Effects-of-calling:java.beans.PropertyChangeSupport:firePropertyChange
    //#unanalyzed(Object clone()): Effects-of-calling:net.sourceforge.pebble.util.StringUtils:transformHTML
    //#unanalyzed(Object clone()): Effects-of-calling:getTagsAsList
    //#unanalyzed(Object clone()): Effects-of-calling:java.util.ArrayList
    //#unanalyzed(Object clone()): Effects-of-calling:java.util.Collections:sort
    //#unanalyzed(Object clone()): Effects-of-calling:net.sourceforge.pebble.domain.PageBasedContent
    //#unanalyzed(Object clone()): Effects-of-calling:setPublished
    //#unanalyzed(Object clone()): Effects-of-calling:java.lang.StringBuilder
    //#unanalyzed(Object clone()): Effects-of-calling:java.util.Date:getTime
    //#unanalyzed(Object clone()): Effects-of-calling:java.lang.StringBuilder:append
    //#unanalyzed(Object clone()): Effects-of-calling:java.lang.StringBuilder:toString
    //#unanalyzed(Object clone()): Effects-of-calling:java.lang.String:length
    //#unanalyzed(Object clone()): Effects-of-calling:java.lang.String:indexOf
    //#unanalyzed(Object clone()): Effects-of-calling:java.lang.String:replaceAll
    //#unanalyzed(Object clone()): Effects-of-calling:java.lang.String:trim
    //#unanalyzed(Object clone()): Effects-of-calling:java.lang.String:toLowerCase
    //#unanalyzed(Object clone()): Effects-of-calling:java.lang.String:split
    //#unanalyzed(Object clone()): Effects-of-calling:java.util.List:contains
    //#unanalyzed(Object clone()): Effects-of-calling:java.util.List:add
    //#unanalyzed(Object clone()): Effects-of-calling:getAllTags
    //#unanalyzed(Object clone()): Effects-of-calling:java.util.List:iterator
    //#unanalyzed(Object clone()): Effects-of-calling:java.util.Iterator:hasNext
    //#unanalyzed(Object clone()): Effects-of-calling:java.util.Iterator:next
    //#unanalyzed(Object clone()): Effects-of-calling:java.beans.PropertyChangeSupport
    //#unanalyzed(Object clone()): Effects-of-calling:java.beans.PropertyChangeSupport:addPropertyChangeListener
    //#unanalyzed(Object clone()): Effects-of-calling:java.util.LinkedList
    //#unanalyzed(Object clone()): Effects-of-calling:java.util.Date
    //#unanalyzed(Object clone()): Effects-of-calling:setDate
    //#unanalyzed(Object clone()): Effects-of-calling:setState
    //#unanalyzed(Object clone()): Effects-of-calling:java.util.HashSet
    //#unanalyzed(Object clone()): Effects-of-calling:java.util.Set:iterator
    //#unanalyzed(Object clone()): Effects-of-calling:java.util.Set:size
    //#unanalyzed(Object clone()): Effects-of-calling:java.util.List:addAll
    //#unanalyzed(Object clone()): Effects-of-calling:java.util.Collections:reverse
    //#unanalyzed(Object clone()): Effects-of-calling:getRootCategory
    //#unanalyzed(Object clone()): Effects-of-calling:java.lang.String:equals
    //#unanalyzed(Object clone()): Effects-of-calling:net.sourceforge.pebble.api.event.PebbleEvent
    //#unanalyzed(Object clone()): Effects-of-calling:java.util.EventObject
    page.setEventsEnabled(false);
    page.setPersistent(isPersistent());
    page.setTitle(getTitle());
    page.setSubtitle(getSubtitle());
    page.setBody(getBody());
    page.setDate(getDate());
    page.setState(getState());
    page.setAuthor(getAuthor());
    page.setOriginalPermalink(getOriginalPermalink());
    page.setName(getName());
    page.setTags(getTags());
    page.setLockedBy(getLockedBy());
    page.setTemplate(getTemplate());

    return page;
    //#staticpage.java:168: end of method: Object net.sourceforge.pebble.domain.StaticPage.clone()
  }

}    //#output(net.sourceforge.pebble.domain.StaticPage__static_init): __Descendant_Table[net/sourceforge/pebble/domain/StaticPage]
    //#output(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.addEvent(Lnet/sourceforge/pebble/api/event/PebbleEvent;)V
    //#output(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.areEventsEnabled()Z
    //#output(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.clearEvents()V
    //#output(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.clearPropertyChangeEvents()V
    //#output(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.clone()Ljava/lang/Object;
    //#output(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.equals(Ljava/lang/Object;)Z
    //#output(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.getAllTags()Ljava/util/List;
    //#output(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.getAuthor()Ljava/lang/String;
    //#output(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.getBlog()Lnet/sourceforge/pebble/domain/Blog;
    //#output(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.getBody()Ljava/lang/String;
    //#output(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.getContent()Ljava/lang/String;
    //#output(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.getDate()Ljava/util/Date;
    //#output(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.getEvents()Ljava/util/List;
    //#output(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.getGuid()Ljava/lang/String;
    //#output(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.getId()Ljava/lang/String;
    //#output(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.getLastModified()Ljava/util/Date;
    //#output(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.getLocalPermalink()Ljava/lang/String;
    //#output(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.getLockedBy()Ljava/lang/String;
    //#output(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.getName()Ljava/lang/String;
    //#output(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.getOriginalPermalink()Ljava/lang/String;
    //#output(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.getPermalink()Ljava/lang/String;
    //#output(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.getPropertyChangeEvents()Ljava/util/List;
    //#output(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.getState()Lnet/sourceforge/pebble/domain/State;
    //#output(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.getSubtitle()Ljava/lang/String;
    //#output(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.getTags()Ljava/lang/String;
    //#output(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.getTagsAsCommaSeparated()Ljava/lang/String;
    //#output(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.getTagsAsList()Ljava/util/List;
    //#output(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.getTemplate()Ljava/lang/String;
    //#output(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.getTitle()Ljava/lang/String;
    //#output(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.getTruncatedContent()Ljava/lang/String;
    //#output(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.getUser()Lnet/sourceforge/pebble/security/PebbleUserDetails;
    //#output(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.hasEvents()Z
    //#output(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.insertEvent(Lnet/sourceforge/pebble/api/event/PebbleEvent;)V
    //#output(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.isAggregated()Z
    //#output(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.isDirty()Z
    //#output(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.isPersistent()Z
    //#output(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.isPublished()Z
    //#output(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.isUnpublished()Z
    //#output(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.nextEvent()Lnet/sourceforge/pebble/api/event/PebbleEvent;
    //#output(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.setAuthor(Ljava/lang/String;)V
    //#output(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.setBody(Ljava/lang/String;)V
    //#output(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.setDate(Ljava/util/Date;)V
    //#output(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.setEventsEnabled(Z)V
    //#output(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.setLockedBy(Ljava/lang/String;)V
    //#output(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.setName(Ljava/lang/String;)V
    //#output(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.setOriginalPermalink(Ljava/lang/String;)V
    //#output(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.setPersistent(Z)V
    //#output(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.setPublished(Z)V
    //#output(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.setState(Lnet/sourceforge/pebble/domain/State;)V
    //#output(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.setSubtitle(Ljava/lang/String;)V
    //#output(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.setTags(Ljava/lang/String;)V
    //#output(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.setTemplate(Ljava/lang/String;)V
    //#output(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.setTitle(Ljava/lang/String;)V
    //#output(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.toString()Ljava/lang/String;
    //#output(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.validate(Lnet/sourceforge/pebble/web/validation/ValidationContext;)V
    //#output(net.sourceforge.pebble.domain.StaticPage__static_init): net/sourceforge/pebble/domain/Content.__Descendant_Table[net/sourceforge/pebble/domain/StaticPage]
    //#output(net.sourceforge.pebble.domain.StaticPage__static_init): net/sourceforge/pebble/domain/PageBasedContent.__Descendant_Table[net/sourceforge/pebble/domain/StaticPage]
    //#output(net.sourceforge.pebble.domain.StaticPage__static_init): net/sourceforge/pebble/domain/Permalinkable.__Descendant_Table[net/sourceforge/pebble/domain/StaticPage]
    //#post(net.sourceforge.pebble.domain.StaticPage__static_init): __Descendant_Table[net/sourceforge/pebble/domain/StaticPage] == &__Dispatch_Table
    //#post(net.sourceforge.pebble.domain.StaticPage__static_init): net/sourceforge/pebble/domain/Content.__Descendant_Table[net/sourceforge/pebble/domain/StaticPage] == &__Dispatch_Table
    //#post(net.sourceforge.pebble.domain.StaticPage__static_init): net/sourceforge/pebble/domain/PageBasedContent.__Descendant_Table[net/sourceforge/pebble/domain/StaticPage] == &__Dispatch_Table
    //#post(net.sourceforge.pebble.domain.StaticPage__static_init): net/sourceforge/pebble/domain/Permalinkable.__Descendant_Table[net/sourceforge/pebble/domain/StaticPage] == &__Dispatch_Table
    //#post(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.addEvent(Lnet/sourceforge/pebble/api/event/PebbleEvent;)V == &net/sourceforge/pebble/domain/Content.addEvent
    //#post(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.areEventsEnabled()Z == &net/sourceforge/pebble/domain/Content.areEventsEnabled
    //#post(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.clearEvents()V == &net/sourceforge/pebble/domain/Content.clearEvents
    //#post(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.clearPropertyChangeEvents()V == &net/sourceforge/pebble/domain/Content.clearPropertyChangeEvents
    //#post(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.clone()Ljava/lang/Object; == &clone
    //#post(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.equals(Ljava/lang/Object;)Z == &equals
    //#post(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.getAllTags()Ljava/util/List; == &getAllTags
    //#post(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.getAuthor()Ljava/lang/String; == &net/sourceforge/pebble/domain/PageBasedContent.getAuthor
    //#post(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.getBlog()Lnet/sourceforge/pebble/domain/Blog; == &net/sourceforge/pebble/domain/PageBasedContent.getBlog
    //#post(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.getBody()Ljava/lang/String; == &net/sourceforge/pebble/domain/PageBasedContent.getBody
    //#post(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.getContent()Ljava/lang/String; == &net/sourceforge/pebble/domain/PageBasedContent.getContent
    //#post(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.getDate()Ljava/util/Date; == &net/sourceforge/pebble/domain/PageBasedContent.getDate
    //#post(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.getEvents()Ljava/util/List; == &net/sourceforge/pebble/domain/Content.getEvents
    //#post(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.getGuid()Ljava/lang/String; == &getGuid
    //#post(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.getId()Ljava/lang/String; == &net/sourceforge/pebble/domain/PageBasedContent.getId
    //#post(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.getLastModified()Ljava/util/Date; == &net/sourceforge/pebble/domain/PageBasedContent.getLastModified
    //#post(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.getLocalPermalink()Ljava/lang/String; == &getLocalPermalink
    //#post(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.getLockedBy()Ljava/lang/String; == &net/sourceforge/pebble/domain/PageBasedContent.getLockedBy
    //#post(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.getName()Ljava/lang/String; == &getName
    //#post(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.getOriginalPermalink()Ljava/lang/String; == &net/sourceforge/pebble/domain/PageBasedContent.getOriginalPermalink
    //#post(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.getPermalink()Ljava/lang/String; == &net/sourceforge/pebble/domain/PageBasedContent.getPermalink
    //#post(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.getPropertyChangeEvents()Ljava/util/List; == &net/sourceforge/pebble/domain/Content.getPropertyChangeEvents
    //#post(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.getState()Lnet/sourceforge/pebble/domain/State; == &net/sourceforge/pebble/domain/Content.getState
    //#post(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.getSubtitle()Ljava/lang/String; == &net/sourceforge/pebble/domain/PageBasedContent.getSubtitle
    //#post(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.getTags()Ljava/lang/String; == &net/sourceforge/pebble/domain/PageBasedContent.getTags
    //#post(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.getTagsAsCommaSeparated()Ljava/lang/String; == &net/sourceforge/pebble/domain/PageBasedContent.getTagsAsCommaSeparated
    //#post(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.getTagsAsList()Ljava/util/List; == &net/sourceforge/pebble/domain/PageBasedContent.getTagsAsList
    //#post(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.getTemplate()Ljava/lang/String; == &getTemplate
    //#post(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.getTitle()Ljava/lang/String; == &net/sourceforge/pebble/domain/PageBasedContent.getTitle
    //#post(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.getTruncatedContent()Ljava/lang/String; == &net/sourceforge/pebble/domain/Content.getTruncatedContent
    //#post(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.getUser()Lnet/sourceforge/pebble/security/PebbleUserDetails; == &net/sourceforge/pebble/domain/PageBasedContent.getUser
    //#post(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.hasEvents()Z == &net/sourceforge/pebble/domain/Content.hasEvents
    //#post(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.insertEvent(Lnet/sourceforge/pebble/api/event/PebbleEvent;)V == &net/sourceforge/pebble/domain/Content.insertEvent
    //#post(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.isAggregated()Z == &net/sourceforge/pebble/domain/PageBasedContent.isAggregated
    //#post(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.isDirty()Z == &net/sourceforge/pebble/domain/Content.isDirty
    //#post(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.isPersistent()Z == &net/sourceforge/pebble/domain/PageBasedContent.isPersistent
    //#post(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.isPublished()Z == &net/sourceforge/pebble/domain/PageBasedContent.isPublished
    //#post(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.isUnpublished()Z == &net/sourceforge/pebble/domain/PageBasedContent.isUnpublished
    //#post(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.nextEvent()Lnet/sourceforge/pebble/api/event/PebbleEvent; == &net/sourceforge/pebble/domain/Content.nextEvent
    //#post(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.setAuthor(Ljava/lang/String;)V == &net/sourceforge/pebble/domain/PageBasedContent.setAuthor
    //#post(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.setBody(Ljava/lang/String;)V == &net/sourceforge/pebble/domain/PageBasedContent.setBody
    //#post(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.setDate(Ljava/util/Date;)V == &net/sourceforge/pebble/domain/PageBasedContent.setDate
    //#post(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.setEventsEnabled(Z)V == &net/sourceforge/pebble/domain/Content.setEventsEnabled
    //#post(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.setLockedBy(Ljava/lang/String;)V == &net/sourceforge/pebble/domain/PageBasedContent.setLockedBy
    //#post(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.setName(Ljava/lang/String;)V == &setName
    //#post(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.setOriginalPermalink(Ljava/lang/String;)V == &net/sourceforge/pebble/domain/PageBasedContent.setOriginalPermalink
    //#post(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.setPersistent(Z)V == &net/sourceforge/pebble/domain/PageBasedContent.setPersistent
    //#post(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.setPublished(Z)V == &net/sourceforge/pebble/domain/PageBasedContent.setPublished
    //#post(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.setState(Lnet/sourceforge/pebble/domain/State;)V == &net/sourceforge/pebble/domain/Content.setState
    //#post(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.setSubtitle(Ljava/lang/String;)V == &net/sourceforge/pebble/domain/PageBasedContent.setSubtitle
    //#post(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.setTags(Ljava/lang/String;)V == &net/sourceforge/pebble/domain/PageBasedContent.setTags
    //#post(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.setTemplate(Ljava/lang/String;)V == &setTemplate
    //#post(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.setTitle(Ljava/lang/String;)V == &net/sourceforge/pebble/domain/PageBasedContent.setTitle
    //#post(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.toString()Ljava/lang/String; == &net/sourceforge/pebble/domain/PageBasedContent.toString
    //#post(net.sourceforge.pebble.domain.StaticPage__static_init): __Dispatch_Table.validate(Lnet/sourceforge/pebble/web/validation/ValidationContext;)V == &validate
    //#staticpage.java:: end of method: net.sourceforge.pebble.domain.StaticPage.net.sourceforge.pebble.domain.StaticPage__static_init
    //#staticpage.java:: end of class: net.sourceforge.pebble.domain.StaticPage
