/* * #%L * BroadleafCommerce CMS Module * %% * Copyright (C) 2009 - 2013 Broadleaf Commerce * %% * 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. * #L% */ package org.broadleafcommerce.cms.file.domain; import org.broadleafcommerce.cms.field.type.StorageType; import org.broadleafcommerce.cms.file.service.StaticAssetService; import org.broadleafcommerce.common.copy.MultiTenantCloneable; import org.broadleafcommerce.common.sandbox.domain.SandBox; import org.broadleafcommerce.common.site.domain.Site; import org.broadleafcommerce.openadmin.audit.AdminAuditable; import java.io.Serializable; import java.util.Map; /** * Created by bpolster. */ public interface StaticAsset extends Serializable, MultiTenantCloneable<StaticAsset> { /** * Returns the id of the static asset. * @return */ public Long getId(); /** * Sets the id of the static asset. * @param id */ public void setId(Long id); /** * The name of the static asset. * @return */ public String getName(); /** * Sets the name of the static asset. Used primarily for * @param name */ public void setName(String name); /** * Returns the altText of this asset. * * @return */ public String getAltText(); /** * Set the altText of the static asset. * @param title */ public void setAltText(String altText); /** * Returns the title of this asset. * * @return */ public String getTitle(); /** * Set the title of the static asset. * @param title */ public void setTitle(String title); /** * URL used to retrieve this asset. * @return */ public String getFullUrl(); /** * Sets the URL for the asset * @param fullUrl */ public void setFullUrl(String fullUrl); /** * Filesize of the asset. * @return */ public Long getFileSize(); /** * Sets the filesize of the asset * @param fileSize */ public void setFileSize(Long fileSize); /** * @deprecated - Use {@link #getTitle()} or {@link #getAltText()}getAltText() instead. * @return */ public Map<String, StaticAssetDescription> getContentMessageValues(); /** * @deprecated - Use {@link #setTitle(String)} or {@link #setAltText(String)} instead. * @param contentMessageValues */ public void setContentMessageValues(Map<String, StaticAssetDescription> contentMessageValues); /** * Returns the mimeType of the asset. * @return */ public String getMimeType(); /** * Sets the mimeType of the asset. * @return */ public void setMimeType(String mimeType); /** * Returns the file extension of the asset. * @return */ public String getFileExtension(); /** * Sets the fileExtension of the asset. * @param fileExtension */ public void setFileExtension(String fileExtension); /** * Returns how the underlying asset is stored. Typically on the FileSystem or the Database. * * If null, this method returns <code>StorageType.DATABASE</code> for backwards compatibility. * * @see {@link StaticAssetService} * @return */ public StorageType getStorageType(); /** * Returns how the asset was stored in the backend (e.g. DATABASE or FILESYSTEM) * @param storageType */ public void setStorageType(StorageType storageType); public AdminAuditable getAuditable(); public void setAuditable(AdminAuditable auditable); }