Nimbusは、SIerによるSIerのためのSI部品ライブラリです。 基盤としてDIコンテナを持ち、サービス(POJO)をホスティングし、アプリケーションに提供します。 また、ライフサイクルの概念があり、サービス間の依存関係の解決を行いながらライフサイクルを制御します。
バグFIX、機能追加、機能改善を行いました。
1. バグFIX
(1)jp.ossc.nimbus.beans.SimplePropertyの不具合を修正
同じプロパティ名でインデックス付きプロパティと通常プロパティが存在するBeanに対して、通常プロパティの設定ができない不具合を修正した。
(2)jp.ossc.nimbus.service.aop.javassist.MethodInterceptorAspectServiceの不具合を修正
java.lang.Object#equals(Object)メソッドに対するアスペクトをかけるとアスペクトコンパイルに失敗する不具合を修正した。
(3)jp.ossc.nimbus.service.journal.editor.JournalServletResponseWrapperの不具合を修正
StrutsのTiles機能を使用してActionを呼び出すと、ジャーナルが出力されない不具合を修正した。
(4)jp.ossc.nimbus.service.journal.editor.JournalHttpServletResponseWrapperの不具合を修正
(3)と同件。
(5)jp.ossc.nimbus.service.scheduler.TimerSchedulerServiceの不具合を修正
各状態毎のスケジュール及びスケジュール名を取得するメソッドが正しく実装されていないのを修正した。
(6)jp.ossc.nimbus.service.semaphore.MemorySemaphoreの不具合を修正
セマフォを獲得していないスレッドがセマフォを返しに来た時に、リソースが開放される不具合を修正した。
2. 変更
(1)jp.ossc.nimbus.daemon.Daemonにメソッド追加
デーモンスレッドが停止するまで待機するstopWait()メソッドに、待機時間を指定できるオーバーロードメソッドstopWait(long)を追加した。
また、同時にstop()メソッドの最後で、stopWait()メソッドを呼んでいたのを、stopWait(60000)に変更した。これにより、デーモンスレッドの停止で無限待ちになる可能性を回避した。
(2)Nmibusで使用しているデーモンスレッドに名前を付けた
この変更により修正されたクラスは、以下。
jp.ossc.nimbus.service.aop.interceptor.MethodAsynchronousInterceptorService
jp.ossc.nimbus.service.aop.interceptor.MethodMetricsInterceptorService
jp.ossc.nimbus.service.cache.DefaultOverflowControllerService
jp.ossc.nimbus.service.cache.SoftReferenceOverflowActionService
jp.ossc.nimbus.service.jndi.CachedJndiFinderService
jp.ossc.nimbus.service.journal.ThreadManagedJournalService
jp.ossc.nimbus.service.log.LogService
jp.ossc.nimbus.service.publish.DefaultPublisherService
jp.ossc.nimbus.service.publish.DefaultPublishContainerService
(3)jp.ossc.nimbus.service.cache.TimeExpierOverflowValidatorServiceのロジックを最適化
(4)jp.ossc.nimbus.service.graphパッケージをリファクタ
(5)jp.ossc.nimbus.service.queue.DefaultQueueServiceをリファクタ
3.(1)で追加されたDelayQueueServiceの追加に伴って、リファクタを行った。
(6)jp.ossc.nimbus.service.writer.SimpleElementに属性追加
jp.ossc.nimbus.util.converter.StringConverterを属性として追加した。
これにより、任意の文字列変換を行う事が可能になった。
また、この修正に伴い、以下のサブクラスを修正した。
jp.ossc.nimbus.service.writer.DateElement
jp.ossc.nimbus.service.writer.ThrowableSimpleElement
3. 追加
(1)jp.ossc.nimbus.service.queue.DelayQueueServiceを追加
遅延配信を行うQueueサービスを追加した。
(2)jp.ossc.nimbus.service.soapパッケージを追加
SOAP通信をサポートするサービスを追加した。