001/* 002 * This library is part of OpenCms - 003 * the Open Source Content Management System 004 * 005 * Copyright (c) Alkacon Software GmbH & Co. KG (http://www.alkacon.com) 006 * 007 * This library is free software; you can redistribute it and/or 008 * modify it under the terms of the GNU Lesser General Public 009 * License as published by the Free Software Foundation; either 010 * version 2.1 of the License, or (at your option) any later version. 011 * 012 * This library is distributed in the hope that it will be useful, 013 * but WITHOUT ANY WARRANTY; without even the implied warranty of 014 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 015 * Lesser General Public License for more details. 016 * 017 * For further information about Alkacon Software, please see the 018 * company website: http://www.alkacon.com 019 * 020 * For further information about OpenCms, please see the 021 * project website: http://www.opencms.org 022 * 023 * You should have received a copy of the GNU Lesser General Public 024 * License along with this library; if not, write to the Free Software 025 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 026 */ 027 028package org.opencms.gwt.client; 029 030import org.opencms.gwt.shared.I_CmsEditableDataExtensions; 031import org.opencms.util.CmsUUID; 032 033/** 034 * Interface for a bean holding data needed to open the xml content editor.<p> 035 * 036 * @since 8.0.1 037 */ 038public interface I_CmsEditableData { 039 040 /** 041 * Gets the collector context id.<p> 042 * 043 * @return the collector context id 044 */ 045 String getContextId(); 046 047 /** 048 * Returns the edit id.<p> 049 * 050 * @return the edit id 051 */ 052 String getEditId(); 053 054 /** 055 * Gets the element id.<p> 056 * 057 * @return the element id 058 */ 059 String getElementId(); 060 061 /** 062 * Returns the element language.<p> 063 * 064 * @return the element language 065 */ 066 String getElementLanguage(); 067 068 /** 069 * Returns the element name.<p> 070 * 071 * @return the element name 072 */ 073 String getElementName(); 074 075 /** 076 * Gets the extended attributes. 077 * 078 * @return the extended attributes 079 */ 080 I_CmsEditableDataExtensions getExtensions(); 081 082 /** 083 * Returns the new link url.<p> 084 * 085 * @return the new link url 086 */ 087 String getNewLink(); 088 089 /** 090 * Returns the new link url.<p> 091 * 092 * @return the new link url 093 */ 094 String getNewTitle(); 095 096 /** 097 * Returns the no edit reason.<p> 098 * 099 * @return the no edit reason 100 */ 101 String getNoEditReason(); 102 103 /** 104 * Gets the (fully qualified) name of the post-create handler class to use.<p> 105 * 106 * @return the post-create handler class name 107 */ 108 String getPostCreateHandler(); 109 110 /** 111 * Returns the site path.<p> 112 * 113 * @return the site path 114 */ 115 String getSitePath(); 116 117 /** 118 * Returns the structure id.<p> 119 * 120 * @return the structure id 121 */ 122 CmsUUID getStructureId(); 123 124 /** 125 * Returns whether an edit handler is available for the resource type.<p> 126 * 127 * @return <code>true</code> if an edit handler is available for the resource type 128 */ 129 boolean hasEditHandler(); 130 131 /** 132 * Returns true if there is an actual resource behind the editable element.<p> 133 * 134 * @return true if the editable element represents an actual resource 135 */ 136 boolean hasResource(); 137 138 /** 139 * Returns if the given resource is unreleased or expired.<p> 140 * 141 * @return <code>true</code> if the given resource is unreleased or expired 142 */ 143 boolean isUnreleasedOrExpired(); 144 145 /** 146 * Sets the site path.<p> 147 * 148 * @param sitePath the site path 149 */ 150 void setSitePath(String sitePath); 151}