/******************************************************************************* * Copyright (c) 2005, 2006 Erkki Lindpere and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html * * Contributors: * Erkki Lindpere - initial API and implementation *******************************************************************************/ package org.eclipse.ecf.bulletinboard; import org.eclipse.core.runtime.IAdaptable; import org.eclipse.ecf.core.identity.IIdentifiable; /** * This interface contains getters for common base properties of all uniquely * identifiable bulletin board objects, which are: Forums, Threads, Messages, * Members, Member Groups and Polls. * * Each of these objects has an identifier, a name and a URL, which usually * includes the identifier. * * This interface should not be directly implemented. * * @author Erkki */ public interface IBBObject extends IIdentifiable, IAdaptable { /** * This object is read-only. The state and contents of it cannot be * modified. */ public static final int READ_ONLY = 1; /** * The state and contents of this object can be modified. It is possible * that an object is in READ_WRITE mode, but some their attributes still * cannot be modified. * * For example, if you can post a reply in a thread, the thread may be in * READ_WRITE mode, but it's possible that you can't change the thread's * name. */ public static final int READ_WRITE = 2; /** * Returns the name of the object. This might be the forum title or thread * or message subject. * * TODO perhaps this should be called "Title" instead, IBulletinBoard also * has getTitle() * * @return the object's name */ public String getName(); /** * Returns the open mode for this object. READ_ONLY or READ_WRITE, or -1 if * the mode cannot be determined. * * @return the open mode for this object */ public int getMode(); }