@Override public String toString() { String path = getDirectory() != null ? getDirectory().getAbsolutePath() : "DIRECTORY_NOT_SET"; return "KahaDBPersistenceAdapter[" + path + (getIndexDirectory() != null ? ",Index:" + getIndexDirectory().getAbsolutePath() : "") + "]"; }
/** * @deprecated use {@link Locker#setLockAcquireSleepInterval(long)} instead * * @param databaseLockedWaitDelay the databaseLockedWaitDelay to set */ @Deprecated public void setDatabaseLockedWaitDelay(int databaseLockedWaitDelay) throws IOException { getLocker().setLockAcquireSleepInterval(databaseLockedWaitDelay); }
@Override public void setTransactionIdTransformer(TransactionIdTransformer transactionIdTransformer) { getStore().setTransactionIdTransformer(transactionIdTransformer); }
private void configureIndexDirectory(PersistenceAdapter adapter, PersistenceAdapter template, String destinationName) { if (template instanceof KahaDBPersistenceAdapter) { KahaDBPersistenceAdapter kahaDBPersistenceAdapter = (KahaDBPersistenceAdapter) template; if (kahaDBPersistenceAdapter.getIndexDirectory() != null) { if (adapter instanceof KahaDBPersistenceAdapter) { File directory = kahaDBPersistenceAdapter.getIndexDirectory(); if (destinationName != null) { directory = new File(directory, destinationName); } ((KahaDBPersistenceAdapter)adapter).setIndexDirectory(directory); } } } }
if (persistent) { brokerService.setDataDirectory(getDataDirectory()); KahaDBPersistenceAdapter persistenceAdapter = new KahaDBPersistenceAdapter(); persistenceAdapter.setDirectory(new File(getDataDirectory())); persistenceAdapter.setCheckForCorruptJournalFiles(isCheckForCorruptJournalFiles()); persistenceAdapter.setCheckpointInterval(getCheckpointInterval()); persistenceAdapter.setChecksumJournalFiles(isChecksumJournalFiles()); persistenceAdapter.setCleanupInterval(getCleanupInterval()); persistenceAdapter.setConcurrentStoreAndDispatchQueues(isConcurrentStoreAndDispatchQueues()); persistenceAdapter.setConcurrentStoreAndDispatchTopics(isConcurrentStoreAndDispatchTopics()); persistenceAdapter.setEnableIndexDiskSyncs(!isEnableIndexWriteAsync()); persistenceAdapter.setEnableJournalDiskSyncs(isEnableJournalDiskSyncs()); persistenceAdapter.setJournalMaxFileLength(getJournalMaxFileLength()); persistenceAdapter.setIgnoreMissingJournalfiles(isIgnoreMissingJournalfiles()); persistenceAdapter.setForceRecoverIndex(isForceRecoverIndex()); brokerService.setDeleteAllMessagesOnStartup(isDeleteAllMessagesOnStartup()); brokerService.setPersistenceAdapter(persistenceAdapter);
/** * @throws Exception * @see org.apache.activemq.Service#stop() */ @Override public void doStop(ServiceStopper stopper) throws Exception { this.letter.stop(); if (brokerService != null && brokerService.isUseJmx()) { ObjectName brokerObjectName = brokerService.getBrokerObjectName(); brokerService.getManagementContext().unregisterMBean(createPersistenceAdapterName(brokerObjectName.toString(), toString())); } }
@Override public void deleteAllMessages() throws IOException { for (PersistenceAdapter persistenceAdapter : adapters) { persistenceAdapter.deleteAllMessages(); } transactionStore.deleteAllMessages(); IOHelper.deleteChildren(getDirectory()); for (Object o : destinationMap.get(new AnyDestination(new ActiveMQDestination[]{new ActiveMQQueue(">"), new ActiveMQTopic(">")}))) { if (o instanceof FilteredKahaDBPersistenceAdapter) { FilteredKahaDBPersistenceAdapter filteredKahaDBPersistenceAdapter = (FilteredKahaDBPersistenceAdapter) o; if (filteredKahaDBPersistenceAdapter.getPersistenceAdapter().getDirectory() != DEFAULT_DIRECTORY) { IOHelper.deleteChildren(filteredKahaDBPersistenceAdapter.getPersistenceAdapter().getDirectory()); } if (filteredKahaDBPersistenceAdapter.getPersistenceAdapter() instanceof KahaDBPersistenceAdapter) { KahaDBPersistenceAdapter kahaDBPersistenceAdapter = (KahaDBPersistenceAdapter) filteredKahaDBPersistenceAdapter.getPersistenceAdapter(); if (kahaDBPersistenceAdapter.getIndexDirectory() != null) { IOHelper.deleteChildren(kahaDBPersistenceAdapter.getIndexDirectory()); } } } } }
@Override public String toString() { String path = getDirectory() != null ? getDirectory().getAbsolutePath() : "DIRECTORY_NOT_SET"; return "KahaDBPersistenceAdapter[" + path + "]"; }
protected PersistenceAdapter createPersistenceAdapter() throws IOException { if (isPersistent()) { PersistenceAdapterFactory fac = getPersistenceFactory(); if (fac != null) { return fac.createPersistenceAdapter(); }else { KahaDBPersistenceAdapter adaptor = new KahaDBPersistenceAdapter(); File dir = new File(getBrokerDataDirectory(),"KahaDB"); adaptor.setDirectory(dir); return adaptor; } } else { return new MemoryPersistenceAdapter(); } }
private void configureIndexDirectory(PersistenceAdapter adapter, PersistenceAdapter template, String destinationName) { if (template instanceof KahaDBPersistenceAdapter) { KahaDBPersistenceAdapter kahaDBPersistenceAdapter = (KahaDBPersistenceAdapter) template; if (kahaDBPersistenceAdapter.getIndexDirectory() != null) { if (adapter instanceof KahaDBPersistenceAdapter) { File directory = kahaDBPersistenceAdapter.getIndexDirectory(); if (destinationName != null) { directory = new File(directory, destinationName); } ((KahaDBPersistenceAdapter)adapter).setIndexDirectory(directory); } } } }
/** * @throws Exception * @see org.apache.activemq.Service#start() */ @Override public void doStart() throws Exception { this.letter.start(); if (brokerService != null && brokerService.isUseJmx()) { PersistenceAdapterView view = new PersistenceAdapterView(this); view.setInflightTransactionViewCallable(new Callable<String>() { @Override public String call() throws Exception { return letter.getTransactions(); } }); view.setDataViewCallable(new Callable<String>() { @Override public String call() throws Exception { return letter.getJournal().getFileMap().keySet().toString(); } }); AnnotatedMBean.registerMBean(brokerService.getManagementContext(), view, createPersistenceAdapterName(brokerService.getBrokerObjectName().toString(), toString())); } }
@Override public void deleteAllMessages() throws IOException { for (PersistenceAdapter persistenceAdapter : adapters) { persistenceAdapter.deleteAllMessages(); } transactionStore.deleteAllMessages(); IOHelper.deleteChildren(getDirectory()); for (Object o : destinationMap.get(new AnyDestination(new ActiveMQDestination[]{new ActiveMQQueue(">"), new ActiveMQTopic(">")}))) { if (o instanceof FilteredKahaDBPersistenceAdapter) { FilteredKahaDBPersistenceAdapter filteredKahaDBPersistenceAdapter = (FilteredKahaDBPersistenceAdapter) o; if (filteredKahaDBPersistenceAdapter.getPersistenceAdapter().getDirectory() != DEFAULT_DIRECTORY) { IOHelper.deleteChildren(filteredKahaDBPersistenceAdapter.getPersistenceAdapter().getDirectory()); } if (filteredKahaDBPersistenceAdapter.getPersistenceAdapter() instanceof KahaDBPersistenceAdapter) { KahaDBPersistenceAdapter kahaDBPersistenceAdapter = (KahaDBPersistenceAdapter) filteredKahaDBPersistenceAdapter.getPersistenceAdapter(); if (kahaDBPersistenceAdapter.getIndexDirectory() != null) { IOHelper.deleteChildren(kahaDBPersistenceAdapter.getIndexDirectory()); } } } } }
@Override public String toString() { String path = getDirectory() != null ? getDirectory().getAbsolutePath() : "DIRECTORY_NOT_SET"; return "KahaDBPersistenceAdapter[" + path + (getIndexDirectory() != null ? ",Index:" + getIndexDirectory().getAbsolutePath() : "") + "]"; }
private void configureIndexDirectory(PersistenceAdapter adapter, PersistenceAdapter template, String destinationName) { if (template instanceof KahaDBPersistenceAdapter) { KahaDBPersistenceAdapter kahaDBPersistenceAdapter = (KahaDBPersistenceAdapter) template; if (kahaDBPersistenceAdapter.getIndexDirectory() != null) { if (adapter instanceof KahaDBPersistenceAdapter) { File directory = kahaDBPersistenceAdapter.getIndexDirectory(); if (destinationName != null) { directory = new File(directory, destinationName); } ((KahaDBPersistenceAdapter)adapter).setIndexDirectory(directory); } } } }
/** * @throws Exception * @see org.apache.activemq.Service#stop() */ @Override public void doStop(ServiceStopper stopper) throws Exception { this.letter.stop(); if (brokerService != null && brokerService.isUseJmx()) { ObjectName brokerObjectName = brokerService.getBrokerObjectName(); brokerService.getManagementContext().unregisterMBean(createPersistenceAdapterName(brokerObjectName.toString(), toString())); } }
/** * @deprecated use {@link Locker#setLockAcquireSleepInterval(long)} instead * * @param databaseLockedWaitDelay the databaseLockedWaitDelay to set */ @Deprecated public void setDatabaseLockedWaitDelay(int databaseLockedWaitDelay) throws IOException { getLocker().setLockAcquireSleepInterval(databaseLockedWaitDelay); }
@Override public void setTransactionIdTransformer(TransactionIdTransformer transactionIdTransformer) { getStore().setTransactionIdTransformer(transactionIdTransformer); }
@Override public void deleteAllMessages() throws IOException { for (PersistenceAdapter persistenceAdapter : adapters) { persistenceAdapter.deleteAllMessages(); } transactionStore.deleteAllMessages(); IOHelper.deleteChildren(getDirectory()); for (Object o : destinationMap.get(new AnyDestination(new ActiveMQDestination[]{new ActiveMQQueue(">"), new ActiveMQTopic(">")}))) { if (o instanceof FilteredKahaDBPersistenceAdapter) { FilteredKahaDBPersistenceAdapter filteredKahaDBPersistenceAdapter = (FilteredKahaDBPersistenceAdapter) o; if (filteredKahaDBPersistenceAdapter.getPersistenceAdapter().getDirectory() != DEFAULT_DIRECTORY) { IOHelper.deleteChildren(filteredKahaDBPersistenceAdapter.getPersistenceAdapter().getDirectory()); } if (filteredKahaDBPersistenceAdapter.getPersistenceAdapter() instanceof KahaDBPersistenceAdapter) { KahaDBPersistenceAdapter kahaDBPersistenceAdapter = (KahaDBPersistenceAdapter) filteredKahaDBPersistenceAdapter.getPersistenceAdapter(); if (kahaDBPersistenceAdapter.getIndexDirectory() != null) { IOHelper.deleteChildren(kahaDBPersistenceAdapter.getIndexDirectory()); } } } } }
@Override public String toString() { String path = getDirectory() != null ? getDirectory().getAbsolutePath() : "DIRECTORY_NOT_SET"; return "KahaDBPersistenceAdapter[" + path + (getIndexDirectory() != null ? ",Index:" + getIndexDirectory().getAbsolutePath() : "") + "]"; }
private void configureIndexDirectory(PersistenceAdapter adapter, PersistenceAdapter template, String destinationName) { if (template instanceof KahaDBPersistenceAdapter) { KahaDBPersistenceAdapter kahaDBPersistenceAdapter = (KahaDBPersistenceAdapter) template; if (kahaDBPersistenceAdapter.getIndexDirectory() != null) { if (adapter instanceof KahaDBPersistenceAdapter) { File directory = kahaDBPersistenceAdapter.getIndexDirectory(); if (destinationName != null) { directory = new File(directory, destinationName); } ((KahaDBPersistenceAdapter)adapter).setIndexDirectory(directory); } } } }