/* * The contents of this file are subject to the Mozilla Public License Version 1.1 * (the "License"); you may not use this file except in compliance with the License. * You may obtain a copy of the License at . * * Software distributed under the License is distributed on an "AS IS" basis, WITHOUT * WARRANTY OF ANY KIND, either express or implied. See the License for the specific * language governing rights and limitations under the License. * * The Original Code is the Venice Web Communities System. * * The Initial Developer of the Original Code is Eric J. Bowersox , * for Silverwrist Design Studios. Portions created by Eric J. Bowersox are * Copyright (C) 2003 Eric J. Bowersox/Silverwrist Design Studios. All Rights Reserved. * * Contributor(s): */ package com.silverwrist.venice.community; import java.util.*; import com.silverwrist.dynamo.db.OpsBase; import com.silverwrist.dynamo.except.*; import com.silverwrist.dynamo.iface.*; import com.silverwrist.dynamo.util.*; import com.silverwrist.venice.CommunityVisibility; abstract class CommunityOps extends OpsBase { /*-------------------------------------------------------------------------------- * Constructor *-------------------------------------------------------------------------------- */ protected CommunityOps(DBConnectionPool pool) { super(pool); } // end constructor /*-------------------------------------------------------------------------------- * Abstract operations *-------------------------------------------------------------------------------- */ abstract java.util.Date setCategoryID(int cid, int catid) throws DatabaseException; abstract Object getProperty(int cid, PropertyKey key) throws DatabaseException; abstract DateObjectPair setProperty(int cid, PropertyKey key, Object value) throws DatabaseException; abstract DateObjectPair removeProperty(int cid, PropertyKey key) throws DatabaseException; abstract int[] getPropertyNamespaceIDs(int cid) throws DatabaseException; abstract Map getAllProperties(int cid, int namespace) throws DatabaseException; abstract java.util.Date setVisibility(int cid, CommunityVisibility visibility) throws DatabaseException; abstract java.util.Date setName(int cid, String name) throws DatabaseException; abstract java.util.Date setAlias(int cid, String alias) throws DatabaseException; abstract void setLastAccessDate(int cid, java.util.Date date) throws DatabaseException; abstract void setLastUpdateDate(int cid, java.util.Date date) throws DatabaseException; abstract java.util.Date grantAccess(int cid, int ugid, boolean is_group, boolean single_use, int auth_nsid, String auth_name, String source_data, String auth_data) throws DatabaseException; abstract java.util.Date revokeAccess(int cid, int ugid, boolean is_group) throws DatabaseException; abstract Object getJoinRequirement(int cid, int uid) throws DatabaseException; abstract Object getJoinEntryNull(int cid, int uid) throws DatabaseException; abstract Object getJoinEntry(int cid, int uid, int auth_nsid, String auth_name, String source_data) throws DatabaseException; abstract String getAuthData(int cid, int ugid, boolean is_group) throws DatabaseException; abstract void deleteSingleUseAuthData(int cid, int ugid, boolean is_group) throws DatabaseException; abstract int[] getServiceIDs(int cid) throws DatabaseException; } // end class CommunityOps