/* * JBoss, Home of Professional Open Source Copyright 2005-2008, Red Hat * Middleware LLC, and individual contributors by the @authors tag. See the * copyright.txt in the distribution for a full listing of individual * contributors. * * This is free software; you can redistribute it and/or modify it under the * terms of the GNU Lesser General Public License as published by the Free * Software Foundation; either version 2.1 of the License, or (at your option) * any later version. * * This software 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 Lesser General Public License for more * details. * * You should have received a copy of the GNU Lesser General Public License * along with this software; if not, write to the Free Software Foundation, * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA, or see the FSF * site: http://www.fsf.org. */ package org.jboss.messaging.core.config; import org.jboss.messaging.core.server.JournalType; import java.io.Serializable; import java.util.List; import java.util.Set; /** * * A Configuration * * @author <a href="mailto:tim.fox@jboss.com">Tim Fox</a> * */ public interface Configuration extends Serializable { // General attributes // ------------------------------------------------------------------- boolean isClustered(); void setClustered(boolean clustered); boolean isBackup(); void setBackup(boolean backup); int getScheduledThreadPoolMaxSize(); void setScheduledThreadPoolMaxSize(int maxSize); long getSecurityInvalidationInterval(); void setSecurityInvalidationInterval(long interval); boolean isSecurityEnabled(); void setSecurityEnabled(boolean enabled); boolean isRequireDestinations(); void setRequireDestinations(boolean require); boolean isJMXManagementEnabled(); void setJMXManagementEnabled(boolean enabled); long getCallTimeout(); void setCallTimeout(long timeout); int getPacketConfirmationBatchSize(); void setPacketConfirmationBatchSize(int size); List<String> getInterceptorClassNames(); void setInterceptorClassNames(List<String> interceptors); long getConnectionScanPeriod(); void setConnectionScanPeriod(long scanPeriod); Set<TransportConfiguration> getAcceptorConfigurations(); void setAcceptorConfigurations(Set<TransportConfiguration> infos); TransportConfiguration getBackupConnectorConfiguration(); void setBackupConnectorConfiguration(TransportConfiguration config); // Journal related attributes // ------------------------------------------------------------ String getBindingsDirectory(); void setBindingsDirectory(String dir); String getJournalDirectory(); void setJournalDirectory(String dir); String getPagingDirectory(); void setPagingDirectory(String dir); JournalType getJournalType(); void setJournalType(JournalType type); boolean isJournalSyncTransactional(); void setJournalSyncTransactional(boolean sync); boolean isJournalSyncNonTransactional(); void setJournalSyncNonTransactional(boolean sync); int getJournalFileSize(); void setJournalFileSize(int size); int getJournalMinFiles(); void setJournalMinFiles(int files); int getJournalMaxAIO(); void setJournalMaxAIO(int maxAIO); void setJournalBufferReuseSize(int reuseSize); int getJournalBufferReuseSize(); boolean isCreateBindingsDir(); void setCreateBindingsDir(boolean create); boolean isCreateJournalDir(); void setCreateJournalDir(boolean create); long getPagingMaxGlobalSizeBytes(); void setPagingMaxGlobalSizeBytes(long maxGlobalSize); boolean isWildcardRoutingEnabled(); }