+++ /dev/null
-/*
- * $Id: Article.java,v 1.1 2004/11/06 16:20:48 idfx Exp $
- *
- * Copyright (C) 2001, 2002, 2003, 2004 The Mir-coders group
- *
- * This file is part of Mir.
- *
- * Mir is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * Mir is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with Mir; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
- *
- * In addition, as a special exception, The Mir-coders gives permission to link
- * the code of this program with any library licensed under the Apache Software License,
- * The Sun (tm) Java Advanced Imaging library (JAI), The Sun JIMI library
- * (or with modified versions of the above that use the same license as the above),
- * and distribute linked combinations including the two. You must obey the
- * GNU General Public License in all respects for all of the code used other than
- * the above mentioned libraries. If you modify this file, you may extend this
- * exception to your version of the file, but you are not obligated to do so.
- * If you do not wish to do so, delete this exception statement from your version.
- */
-package org.codecoop.mir.core.model;
-
-import java.io.Serializable;
-import java.text.SimpleDateFormat;
-import java.util.Date;
-import java.util.HashSet;
-import java.util.Set;
-
-import org.apache.commons.lang.builder.ToStringBuilder;
-import org.apache.commons.lang.builder.ToStringStyle;
-
-/**
- * An Article object is used to save the main content objects.
- * It has references to Media objects and Comment objects. An Article can be in
- * different Categories and has one ArticleType.
- *
- * @author idefix
- */
-public class Article extends Media implements Serializable {
-
- /** persistent field */
- private String date;
-
- /** nullable persistent field */
- private String subtitle;
-
- /** nullable persistent field */
- private String edittitle;
-
- /** nullable persistent field */
- private String content;
-
- /** persistent field */
- private boolean html;
-
- /** nullable persistent field */
- private User lockingUser;
-
- /** nullable persistent field */
- private Language language;
-
- /** nullable persistent field */
- private ArticleStatus status;
-
- /** persistent field */
- private Set typedCategories;
-
- /** persistent field */
- private Set medias;
-
- private int hashCode;
-
- /** default constructor */
- public Article() {
- super();
- SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyyMMdd");
- date = simpleDateFormat.format(new Date());
- }
-
- public String getDate() {
- return this.date;
- }
-
- public void setDate(String date) {
- this.date = date;
- }
-
- public String getSubtitle() {
- return this.subtitle;
- }
-
- public void setSubtitle(String subtitle) {
- this.subtitle = subtitle;
- }
-
- public String getEdittitle() {
- return this.edittitle;
- }
-
- public void setEdittitle(String edittitle) {
- this.edittitle = edittitle;
- }
-
- public String getContent() {
- return this.content;
- }
-
- public void setContent(String content) {
- this.content = content;
- }
-
- public boolean isHtml() {
- return this.html;
- }
-
- public void setHtml(boolean html) {
- this.html = html;
- }
-
- public User getLockingUser() {
- return this.lockingUser;
- }
-
- public void setLockingUser(User lockingUser) {
- this.lockingUser = lockingUser;
- }
-
- public Language getLanguage() {
- return this.language;
- }
-
- public void setLanguage(Language language) {
- this.language = language;
- }
-
- public ArticleStatus getStatus() {
- return status;
- }
-
- public void setStatus(ArticleStatus status) {
- this.status = status;
- }
-
- public Set getTypedCategories() {
- return this.typedCategories;
- }
-
- public void setTypedCategories(Set topics) {
- this.typedCategories = topics;
- }
-
- public void addTypedCategory(TypedCategory typedCategory){
- if(null == typedCategories){
- typedCategories = new HashSet();
- }
- typedCategories.add(typedCategory);
- }
-
- public Set getMedias() {
- return this.medias;
- }
-
- public void setMedias(Set medias) {
- this.medias = medias;
- }
-
- public boolean equals(Object obj) {
- if (null == obj) {
- return false;
- }
- if (!(obj instanceof Article)) {
- return false;
- } else {
- Article mObj = (Article) obj;
- if (null == this.getId() || null == mObj.getId()) {
- return false;
- } else {
- return (this.getId().equals(mObj.getId()));
- }
- }
- }
-
- public int hashCode() {
- if (Integer.MIN_VALUE == this.hashCode) {
- if (null == this.getId()){
- return super.hashCode();
- } else {
- String hashStr = this.getClass().getName() + ":"
- + this.getId().hashCode();
- this.hashCode = hashStr.hashCode();
- }
- }
- return this.hashCode;
- }
-
- /**
- * @see java.lang.Object#toString()
- */
- public String toString() {
- return new ToStringBuilder(this, ToStringStyle.DEFAULT_STYLE)
- .append("id", this.getId())
- .toString();
- }
-}
\ No newline at end of file