Download List

Project Description

Nimbusは、SIerによるSIerのためのSI部品ライブラリです。 基盤としてDIコンテナを持ち、サービス(POJO)をホスティングし、アプリケーションに提供します。 また、ライフサイクルの概念があり、サービス間の依存関係の解決を行いながらライフサイクルを制御します。

System Requirements

System requirement is not defined

Released at 2011-10-04 11:29
nimbus 1.2.0 (1 files Hide)

Release Notes

バグFIX、機能追加、機能改善、動作変更を行いました。

Changelog

1. バグFIX
(1)jp.ossc.nimbus.beans.SimplePropertyの不具合を修正
 ・isIgnoreNullProperty()がtrueの場合、getProperty(null)を呼ぶとNullPointerExceptionになる不具合を修正した。
 ・isNumber(Class)の引数にCharacter.TYPEを渡すとtrueを返す不具合を修正した。
(2)jp.ossc.nimbus.beans.dataset.RecordListの不具合を修正
 cloneSchema()すると、蓄積検索結果が複製される不具合を修正した。
(3)jp.ossc.nimbus.beans.dataset.RecordSchemaの不具合を修正
 スキーマ定義文字列に、複数の種類の改行コードが混じると、正しくパースできない不具合を修正した。
(4)jp.ossc.nimbus.core.DefaultServiceLoaderServiceの不具合を修正
 同じServiceManagerを別サービス定義ファイルでロードした場合に、サービスの依存関係制御が正しく動作しない場合がある不具合を修正した。
(5)jp.ossc.nimbus.core.DefaultServiceManagerServiceの不具合を修正
 ・前に書いたmanager-propertyの値を後に書いたmanager-propertyで${}で参照できない場合がある不具合を修正した。
 ・デフォルトのRepository実装で、registeredSet()の戻り値がMap.Entryの集合になっていたのを、Serviceの集合になるように修正した。
  この不具合は内部的なもので、表面化しない不具合である。
 ・依存関係を満たしているのに、依存関係によって待たされているようにみえる場合がある不具合を修正した。
 ・同一マネージャを複数ファイルに定義すると、サービスが定義されているファイルのServiceLoaderではない、
  別ファイルのServiceLoaderにサービス定義情報が登録される場合がある不具合を修正した。
(6)jp.ossc.nimbus.core.ManagerMetaDataの不具合を修正
 ・setProperty(String, String)で指定されたプロパティ名が、ManagerPropertyMetaDataのsetName(String)に反映されない不具合を修正した。
 ・message要素で、manager名を省略すると、manager名が必ずNimbusになってしまう不具合を修正した。
(7)jp.ossc.nimbus.core.ServerMetaDataの不具合を修正
 setProperty(String, String)で指定されたプロパティ名が、ServerPropertyMetaDataのsetName(String)に反映されない不具合を修正した。
(8)jp.ossc.nimbus.service.aop.interceptor.MethodMetricsInterceptorServiceの不具合を修正
 displayMetricsInfo()で不要なカンマが出力される不具合を修正した。
(9)jp.ossc.nimbus.service.aop.javassist.MethodInterceptorAspectServiceの不具合を修正
 javassistをロードしたクラスローダと、アスペクト対象のメソッドを呼び出しているスレッドに関連するクラスローダが異なる場合に、
 NoClassDefFoundErrorが発生する不具合を修正した。
(10)jp.ossc.nimbus.service.beancontrol.BeanFlowInvokerAccessImpl2の不具合を修正
 ・for要素のend属性に数値以外が指定された時の例外メッセージが誤っていたのを修正した。
 ・field要素を記述してもフィールドに値が設定されない不具合を修正した。
 ・for要素のvar属性がDTD上optionalにも関わらず、実装上requireになっている不具合を修正した。
 ・flow要素以外のjournal属性に、falseを指定してもジャーナルが出力されてしまう不具合を修正した。
(11)jp.ossc.nimbus.service.beancontrol.DefaultBeanFlowInvokerFactoryServiceの不具合を修正
 サービスを使用中にreload()を呼ぶと、InvalidConfigurationExceptionが発生する不具合を修正した。
(12)jp.ossc.nimbus.service.cache.FileKeyCachedReferenceの不具合を修正
 永続化したファイルを再読み込みできない不具合を修正した。
(13)jp.ossc.nimbus.service.codemaster.CodeMasterServiceの不具合を修正
 起動直後にマスタを取得するとマスタが取得できない場合がある不具合を修正した。
(14)jp.ossc.nimbus.service.http.proxy.HttpRequestの不具合を修正
 ・getQueryMatcher(String)で、正しくクエリの正規表現マッチができない不具合を修正した。
 ・クエリがnullの場合に、getQueryMatcher(String)を呼び出すと、NullPPointerExceptionが発生する不具合を修正した。
(15)jp.ossc.nimbus.service.http.proxy.ProxyServerServiceの不具合を修正
 クライアント側で稀にIOExceptionが発生する問題を修正した。
(16)jp.ossc.nimbus.service.http.proxy.TestHttpProcessServiceの不具合を修正
 GETメソッドでアクセスされると、NullPointerExceptionが発生する不具合を修正した。
(17)jp.ossc.nimbus.service.keepalive.ClusterServiceの不具合を修正
 終了時にSocketExceptionがthrowされる場合がある不具合を修正した。
(18)jp.ossc.nimbus.service.log.LogServiceの不具合を修正
 サービスの停止時、スレッドが停止できない場合がある不具合を修正した。
(19)jp.ossc.nimbus.service.message.MessageRecordImplの不具合を修正
 makeMessageメソッドのLocaleをnullで渡されるとNullPointerExceptionが発生する不具合を修正した。
(20)jp.ossc.nimbus.service.publish.DefaultPublisherServiceの不具合を修正
 ・AnalyzeQueueを設定すると、CPU負荷が高くなる不具合を修正した。
 ・acceptでタイムアウトしたクライアントがいると、無限ループに陥る不具合を修正した。
(21)jp.ossc.nimbus.service.queue.DefaultQueueServiceの不具合を修正
 ・pushしてもpeek待ちしているスレッドが起こされない不具合を修正した。
 ・Queueが空の状態で、get(0)で呼び出すと、無限待ちに陥る不具合を修正した。
 ・内部で使用しているHashSetに対して、同期化せずにアクセスしている箇所があったため、HashSet内で無限ループに陥る不具合を修正した。
(22)jp.ossc.nimbus.service.queue.DelayQueueServiceの不具合を修正
 ・pushしてもpeek待ちしているスレッドが起こされない不具合を修正した。
 ・Queueが空の状態で、get(0)で呼び出すと、無限待ちに陥る不具合を修正した。
 ・内部で使用しているHashSetに対して、同期化せずにアクセスしている箇所があったため、HashSet内で無限ループに陥る不具合を修正した。
(23)jp.ossc.nimbus.service.scheduler2.DatabaseConditionScheduleMakerServiceの不具合を修正
 スケジュールを作成する際に、JDBC Connectionをクローズしない不具合を修正した。
(24)jp.ossc.nimbus.service.scheduler2.DefaultScheduleManagerServiceの不具合を修正
 makeSchedule(Date)を複数回呼び出すと、スケジュールの日付が正しくなくなる不具合を修正した。
(25)jp.ossc.nimbus.service.scheduler2.DatabaseScheduleManagerServiceの不具合を修正
 ・changeControlState(String id, int oldState, int newState)を呼び出しても、SceduleControlListenerに正しく変更した状態が伝わらない不具合を修正した。
 ・Scheduleを取得した際に、getDpends()に依存関係が設定されていない不具合を修正した。
(26)jp.ossc.nimbus.service.semaphore.MemorySemaphoreの不具合を修正
 ・getResource(long)で引数を0にすると、IllegalArgumentExceptionが発生する不具合を修正した。
 ・getResource(long)で引数を0にすると、タイムアウトしない不具合を修正した。
(27)jp.ossc.nimbus.service.writer.mail.MailWriterServiceの不具合を修正
 BodyIndex属性の値が0の場合、bodyを取得しない不具合を修正した。
(28)jp.ossc.nimbus.util.converter.DataSetJSONConverterの不具合を修正
 ・タブ文字がバックスペース文字にエスケープされる不具合を修正した。
 ・HeaderやRecordListに名前を付けていない場合に、convertToObjectを呼び出すと例外がthrowされる不具合を修正した。
 ・JSONストリーム→DataSet変換において、JSONの値に、ダブルクオートがエスケープされたものが含まれていると正しく変換できない不具合を修正した。
 ・[]となっているJSON配列のパースに失敗する不具合を修正した。
 ・浮動小数点型で、値がNaNやInfiniteの場合に、"でエスケープしていない不具合を修正した。

2. 変更
(1)jp.ossc.nimbus.beans.BooleanArrayEditorの変更
 内部実装をBooleanEditorに委譲した。
(2)jp.ossc.nimbus.beans.IndexedPropertyの変更
 ・例外のメッセージを分かりやすくした。
 ・性能向上した。
(3)jp.ossc.nimbus.beans.MappedPropertyの変更
 ・例外のメッセージを分かりやすくした。
 ・性能向上した。
(4)jp.ossc.nimbus.beans.NimbusPropertyEditorManagerの変更
 jp.ossc.nimbus.beans.ConstructorEditorを登録した。
(5)jp.ossc.nimbus.beans.SimplePropertyの変更
 ・性能向上した。
(6)jp.ossc.nimbus.beans.Utilityの変更
 replaceSystemProperty(String)の引数でnullを指定した場合、nullを返すようにした。
(7)jp.ossc.nimbus.beans.dataset.DataSetの変更
 ・以下のメソッドを追加した。
  ・protected Header createHeader(String, String)
  ・protected Header createHeader(String, RecordSchema)
  ・protected RecordList createRecordList(String, String)
  ・protected RecordList createRecordList(String, RecordSchema)
 ・以下のメソッドを削除した。
  ・protected Object clone()
(8)jp.ossc.nimbus.beans.dataset.DefaultPropertySchemaの変更
 ・setProperty()時に、型チェックのみ行い、制約条件のチェックは行わないようにした。
  制約条件のチェックは、Record#validateProperty(String)でのみ行う。
 ・制約式で、valueを参照したい時に、@で囲まなくても良いようにした。
 ・プライマリキーを指定できるようにした。
 ・入力変換、出力変換のクラスの指定方法を変更した。
 ・setProperty()時に、型に相違がありConverterが設定されている場合は、自動的に型変換を行うようにした。
(9)jp.ossc.nimbus.beans.dataset.Headerの変更
 cloneSchema()メソッドのオーバーライドをやめた。
(10)jp.ossc.nimbus.beans.dataset.PropertySchemaの変更
 以下のメソッドを追加した。
 ・public boolean isPrimaryKey()
(11)jp.ossc.nimbus.beans.dataset.Recordの変更
 ・以下のメソッドを追加した。
  ・public void replaceSchema(String)
  ・public void replaceRecordSchema(RecordSchema)
  ・public void appendSchema(String)
  ・public CodeMasterUpdateKey createCodeMasterUpdateKey()
  ・public CodeMasterUpdateKey createCodeMasterUpdateKey(CodeMasterUpdateKey)
  ・public void setCodeMasterUpdateKey(CodeMasterUpdateKey)
 ・以下のメソッドのシグニチャを変更した。
  ・setRecordSchema(RecordSchema)→setRecordSchema(RecordSchema) throws PropertySchemaDefineException
 ・以下のメソッドを削除した。
  ・protected Object clone()
(12)jp.ossc.nimbus.beans.dataset.RecordListの変更
 ・iterator()、listIteratorメソッドで、RecordListが変更された時、RecordListのaddやremoveが呼ばれるようにした。
 ・直列化処理を性能向上した。
 ・PartUpdateをimplementsした。
 ・内部のMapを同期化した。
 ・以下のメソッドを追加した。
  ・public Record primaryKeySearch(Record)
  ・public void replaceSchema(String)
  ・public void replaceRecordSchema(RecordSchema)
  ・public void appendSchema(String)
  ・public String[] getStockKeyNames()
  ・public String[] getStockKeyPropertyNames(String)
  ・public int[] getStockKeyPropertyIndexes(String)
  ・public void removeStockKey(String)
  ・public void clearStockKey()
  ・public String[] getStockSearchConditionNames()
  ・public String getStockSearchCondition(String)
  ・public void removeStockSearchCondition(String)
  ・public void clearStockSearchCondition()
  ・public void analyzeStockSearchCondition(String)
  ・public void analyzeStockKey(String)
  ・public void trimToSize()
  ・public void setPartUpdateSort(String[], boolean[])
  ・public void setPartUpdateSort(int[], boolean[])
  ・public PartUpdateRecords createPartUpdateRecords(PartUpdateRecords, int, boolean)
  ・public PartUpdateRecords fillPartUpdateRecords(CodeMasterUpdateKey)
  ・public PartUpdateRecords fillPartUpdateRecords(PartUpdateRecords)
  ・public void setName(String)
 ・以下のメソッドのシグニチャを変更した。
  ・setRecordSchema(RecordSchema)→setRecordSchema(RecordSchema) throws PropertySchemaDefineException
(13)jp.ossc.nimbus.beans.dataset.RecordListPropertySchemaの変更
 以下のメソッドを追加した。
 ・public boolean isPrimaryKey()
(14)jp.ossc.nimbus.beans.dataset.RecordSchemaの変更
 ・重複した名前のプロパティを定義するとPropertySchemaDefineExceptionをthrowするようにした。
 ・XpathPropertySchemaをエイリアス名XPATHで指定可能にした。
 ・javax.xmlがJDK1.4には含まれていないため、それを使用するクラスをstatic initializerでロードするのはやめた。
 ・以下のメソッドを追加した。
  ・public PropertySchema[] getPrimaryKeyPropertySchemata()
  ・public void appendSchema(String)
(15)jp.ossc.nimbus.beans.dataset.ValidatorPropertySchemaの変更
 ・setProperty()時に、型チェックのみ行い、制約条件のチェックは行わないようにした。
  制約条件のチェックは、Record#validateProperty(String)でのみ行う。
(16)jp.ossc.nimbus.beans.dataset.XpathPropertySchemaの変更
 ・setProperty()時に、型チェックのみ行い、制約条件のチェックは行わないようにした。
  制約条件のチェックは、Record#validateProperty(String)でのみ行う。
(17)jp.ossc.nimbus.core.DefaultServiceLoaderServiceの変更
 ・環境変数の優先順位を変更した。
  変更前:ServiceLoaderConfig > manager-property要素 > JVMシステムプロパティ > server-property要素
  変更後:JVMシステムプロパティ > ServiceLoaderConfig > manager-property要素 > server-property要素
 ・同じServiceManagerを別サービス定義ファイルでロードした場合に、サービスの依存関係制御が正しく動作しない場合がある不具合を修正した。
(18)jp.ossc.nimbus.core.DefaultServiceManagerServiceの変更
 ・環境変数の優先順位を変更した。
  変更前:ServiceLoaderConfig > manager-property要素 > JVMシステムプロパティ > server-property要素
  変更後:JVMシステムプロパティ > ServiceLoaderConfig > manager-property要素 > server-property要素
 ・性能向上した。
 ・サービスマネージャ経由で、サービスの状態変更が必要ない場合に、状態を変更しようとしてもWARNログが出力されないようにした。
 ・以下のメソッドを削除した。
  ・private Class convertStringToClass(String)
 ・以下のメソッドにthrows節を追加した。
  ・public void registerService(String, Object)
  ・public void registerService(String, Service)
(19)jp.ossc.nimbus.core.ManagerMetaDataの変更
 ・manager要素配下に、ifdef要素を書けるようにした。
 ・manager要素の子要素の評価で、manager-property要素の評価を最初に行うようにした。
 ・以下のメソッドを追加した。
  ・public Set getPropertyNameSet()
(20)jp.ossc.nimbus.core.MetaDataの変更
 ・getElementContent()メソッドで、XML要素の内容が空もしくは存在しない場合は、空文字を返す仕様だったのをnullを返す仕様に変更した。
 ・以下のメソッドを追加した。
  ・public void setIfDefMetaData(IfDefMetaData)
  ・public IfDefMetaData getIfDefMetaData()
(21)jp.ossc.nimbus.core.NimbusClassLoaderの変更
 ・isNonTranslatableClassName(String)がfalseを返すクラスでも、isLoadNotTransformClass()がtrueであれば、このクラスローダーでロードするようにした。
 ・isNonTranslatableClassName(String)で判定対象となっていたクラスの一部をisNonLoadableClassName(String)メソッドに分割して、ロードすらしないクラスと、変換しないクラスとに分けた。
 ・AspectTranslatorが設定されていなくても、isLoadNotTransformClass()がtrueの時は、ロード処理は行うようにした。
 ・NimbusClassLoader自身は、ロードしないようにした。
 ・以下のメソッドを追加した。
  ・public static boolean isNonLoadableClassName(String classname)
(22)jp.ossc.nimbus.core.ObjectMetaDataの変更
 object要素配下に、ifdef要素を書けるようにした。
(23)jp.ossc.nimbus.core.ServerMetaDataの変更
 ・object要素配下に、ifdef要素を書けるようにした。
 ・server要素の子要素の評価で、server-property要素の評価を最初に行うようにした。
 ・以下のメソッドを追加した。
  ・public Set getPropertyNameSet()
(24)jp.ossc.nimbus.core.ServiceBaseの変更
 finalizeで、サービスの状態変更が必要ない場合に、状態を変更しようとしているWARNログが出力されないようにした。
(25)jp.ossc.nimbus.core.ServiceManagerの変更
 ・以下のメソッドにthrows節を追加した。
  ・public void registerService(String, Object)
  ・public void registerService(String, Service)
(26)jp.ossc.nimbus.core.ServiceManagerFactoryの変更
 ・以下のメソッドにthrows節を追加した。
  ・public void registerService(String, String, Object)
  ・public void registerService(String, String, Service)
(27)jp.ossc.nimbus.core.ServiceMetaDataの変更
 ・service要素配下に、ifdef要素を書けるようにした。
 ・service要素の属性initStateで、manager-property要素で定義した値を参照できるようにした。
(28)jp.ossc.nimbus.core.ServiceNameMetaDataの変更
 内容が空の場合、DeploymentExceptionをthrowするようにした。
(29)jp.ossc.nimbus.core.Utilityの変更
 ・以下のメソッドを追加した。
  ・public static String getProperty(String, ServiceLoaderConfig, ServiceManager, MetaData)
  ・public static String replaceManagerProperty(ManagerMetaData, String)
  ・public static Class convertStringToClass(String)
  ・public static Class convertStringToClass(String, boolean)
(30)jp.ossc.nimbus.daemon.Daemonの変更
 ・以下のメソッドを追加した。
  ・public boolean isProviding()
  ・public boolean isConsuming()
  ・public boolean isSusupend()
  ・public void setSuspendCheckInterval(long)
  ・public long getSuspendCheckInterval()
  ・public DaemonRunnable getDaemonRunnable()
(31)jp.ossc.nimbus.daemon.DaemonControlの変更
 ・以下のメソッドを追加した。
  ・public void suspend()
(32)jp.ossc.nimbus.io.CSVReaderの変更
 ・以下のコンストラクタを追加した。
  ・public CSVReader()
  ・public CSVReader(int)
 ・以下のメソッドを追加した。
  ・public void setReader(Reader)
  ・public CSVReader cloneReader()
  ・public void setTrim(boolean)
  ・public boolean isTrim()
  ・public void setCommentPrefix(String)
  ・public String getCommentPrefix()
  ・public void toArray(String, char, char, char, String, String, boolean, boolean, boolean)
  ・public String[] toArray(String, char, char, String, String, boolean, boolean, boolean)
  ・public List toList(String, char, char, char, String, String, boolean, boolean, boolean)
  ・public List toList(String, char, char, String, String, boolean, boolean, boolean)
(33)jp.ossc.nimbus.io.CSVWriterの変更
 ・以下のコンストラクタを追加した。
  ・public CSVWriter()
  ・public CSVWriter(int)
 ・以下のメソッドを追加した。
  ・public void setWriter(Writer)
  ・public CSVWriter cloneWriter()
  ・public String toCSV(String[],char,char,String)
  ・public String toEnclosedCSV(String[],char,char,String)
  ・public String toCSV(List,char,char,String)
  ・public String toEnclosedCSV(List,char,char,String)
(34)jp.ossc.nimbus.recset.RowDataの変更
 setValueNative(int, Object)のアクセス修飾子をpublicに変更した。
(35)jp.ossc.nimbus.service.aop.DefaultInterceptorChainFactoryServiceの変更
 以下のメソッドを追加した。
  ・public boolean isUseThreadLocalInterceptorChain()
  ・public void setUseThreadLocalInterceptorChain(boolean)
(36)jp.ossc.nimbus.service.aop.DefaultInterceptorChainFactoryServiceMBeanの変更
 以下のメソッドを追加した。
  ・public boolean isUseThreadLocalInterceptorChain()
  ・public void setUseThreadLocalInterceptorChain(boolean)
(37)jp.ossc.nimbus.service.aop.interceptor.ExceptionThrowInterceptorServiceの変更
 jp.ossc.nimbus.service.aop.interceptor.ExceptionThrowインタフェースを実装した。
(38)jp.ossc.nimbus.service.aop.interceptor.ExceptionThrowInterceptorServiceMBeanの変更
 以下のメソッドを追加した。
  ・public void setEnabled(boolean)
  ・public boolean isEnabled()
(39)jp.ossc.nimbus.service.aop.interceptor.MethodAsynchronousInterceptorServiceの変更
 サービスの停止時に、キューの開放より先にデーモンを停止するようにした。
(40)jp.ossc.nimbus.service.aop.interceptor.MethodMetricsInterceptorServiceの変更
 displayMetricsInfo()で、メソッド名を最後に出力するように変更した。
(41)jp.ossc.nimbus.service.aop.interceptor.RequestProcessCheckInterceptorServiceの変更
 以下のメソッドを追加した。
  ・public void removeRequest(String, String)
  ・public void clearRequest()
(42)jp.ossc.nimbus.service.aop.interceptor.RequestProcessCheckInterceptorServiceMBeanの変更
 以下のメソッドを追加した。
  ・public void removeRequest(String, String)
  ・public void clearRequest()
(43)jp.ossc.nimbus.service.aop.interceptor.ReturnInterceptorServiceの変更
 以下のメソッドを追加した。
  ・public void setEnabled(boolean)
  ・public boolean isEnabled()
(44)jp.ossc.nimbus.service.aop.interceptor.ReturnInterceptorServiceMBeanの変更
 以下のメソッドを追加した。
  ・public void setEnabled(boolean)
  ・public boolean isEnabled()
(45)jp.ossc.nimbus.service.aop.interceptor.ThreadContextInitializeInterceptorServiceの変更
 以下のメソッドを追加した。
  ・public boolean isClear()
  ・public void setClear(boolean)
(46)jp.ossc.nimbus.service.aop.interceptor.servlet.ServletRequestInitializeInterceptorServiceの変更
 以下のメソッドを追加した。
  ・public boolean isThrowServiceNotFoundException()
  ・public void setThrowServiceNotFoundException(boolean)
(47)jp.ossc.nimbus.service.aop.interceptor.servlet.ServletRequestInitializeInterceptorServiceMBeanの変更
 以下のメソッドを追加した。
  ・public boolean isThrowServiceNotFoundException()
  ・public void setThrowServiceNotFoundException(boolean)
(48)jp.ossc.nimbus.service.aop.interceptor.servlet.ThreadContextInitializeInterceptorServiceの変更
 以下のメソッドを追加した。
  ・public boolean isClear()
  ・public void setClear(boolean)
  ・public Properties getContextValueRequestParameter()
  ・public void setContextValueRequestParameter(Properties)
(49)jp.ossc.nimbus.service.aop.interceptor.servlet.ThreadContextInitializeInterceptorServiceMBeanの変更
 以下のメソッドを追加した。
  ・public boolean isClear()
  ・public void setClear(boolean)
  ・public Properties getContextValueRequestParameter()
  ・public void setContextValueRequestParameter(Properties)
(50)jp.ossc.nimbus.service.beancontrol.BeanFlowInvokerAccessの変更
 以下のメソッドを追加した。
  ・public String getFlowName()
(51)jp.ossc.nimbus.service.beancontrol.BeanFlowInvokerAccessImplの変更
 以下のメソッドを追加した。
  ・public String[] getOverwrideFlowNames()
(52)jp.ossc.nimbus.service.beancontrol.BeanFlowInvokerAccessImpl2の変更
 ・環境変数の優先順位を変更した。
  変更前:ServiceLoaderConfig>manager-property要素>JVMシステムプロパティ>server-property要素
  変更後:JVMシステムプロパティ>ServiceLoaderConfig>manager-property要素>server-property要素
 ・interpreter要素を追加した。
 ・result要素の内容に""を指定すると、""と渡っていたのを、空文字が渡るようにした。
 ・if要素、case要素、default要素を空要素で記述できるようにした。
 ・TransactionManagerの取得に、jp.ossc.nimbus.service.transaction.TransactionManagerFactoryを使用するようにした。
 ・override要素を追加した。
 ・callflow要素に属性overrideを追加した。
 ・target要素にjournal属性を追加した。
 ・result要素にjournal属性を追加した。
 ・for要素のジャーナルを出力するようにした。
 ・test属性に${}のプロパティ指定ができるようにした。
 ・resource要素のservice属性に${}でプロパティ参照できるようにした。
 ・service-ref要素の内容に${}でプロパティ参照できるようにした。
 ・callflow要素のfactory属性に${}でプロパティ参照できるようにした。
 ・service-refの子要素にinput、object、static-invoke、static-field-ref、var、step-ref、expressionを指定できるようにした。
 ・以下のメソッドを追加した。
  ・public String[] getOverwrideFlowNames()
(53)jp.ossc.nimbus.service.beancontrol.BeanFlowInvokerFactoryCallBackの変更
 以下のメソッドを追加した。
  ・public Interpreter getInterpreter()
  ・public TransactionManagerFactory getTransactionManagerFactory()
  ・public boolean containsFlow(String)
  ・public BeanFlowInvoker createFlow(String, String, boolean)
(54)jp.ossc.nimbus.service.beancontrol.BeanFlowInvokerFactoryGroupServiceの変更
 以下のメソッドを追加した。
  ・public BeanFlowInvoker createFlow(String, String, boolean)
(55)jp.ossc.nimbus.service.beancontrol.DefaultBeanFlowInvokerFactoryServiceの変更
 以下のメソッドを追加した。
  ・public void setInterpreterServiceName(ServiceName)
  ・public ServiceName getInterpreterServiceName()
  ・public Interpreter getInterpreter()
  ・public void setInterpreter(Interpreter)
  ・public void setTransactionManagerFactoryServiceName(ServiceName)
  ・public ServiceName getTransactionManagerFactoryServiceName()
  ・public TransactionManagerFactory getTransactionManagerFactory()
  ・public void setTransactionManagerFactory(TransactionManagerFactory)
  ・public BeanFlowInvoker createFlow(String, String, boolean)
(56)jp.ossc.nimbus.service.beancontrol.DefaultBeanFlowInvokerFactoryServiceMBeanの変更
 以下のメソッドを追加した。
  ・public void setInterpreterServiceName(ServiceName)
  ・public ServiceName getInterpreterServiceName()
  ・public void setTransactionManagerFactoryServiceName(ServiceName)
  ・public ServiceName getTransactionManagerFactoryServiceName()
(57)jp.ossc.nimbus.service.beancontrol.interfaces.BeanFlowInvokerの変更
 以下のメソッドを追加した。
  ・public String getFlowName()
  ・public String[] getOverwrideFlowNames()
(58)jp.ossc.nimbus.service.beancontrol.interfaces.BeanFlowInvokerFactoryの変更
 以下のメソッドを追加した。
  ・public BeanFlowInvoker createFlow(String, String, boolean)
(59)jp.ossc.nimbus.service.cache.DefaultCachedReferenceの変更
 以下のメソッドのアクセス修飾子をprivateからprotectedに変更した。
  ・private void writeSet(ObjectOutputStream, Set)
  ・private ServiceName getServiceName(Object)
  ・private Set readSet(ObjectInputStream)
(60)jp.ossc.nimbus.service.cache.DefaultKeyCachedReferenceの変更
 直列化の実装を追加した。
(61)jp.ossc.nimbus.service.cache.DefaultOverflowControllerServiceの変更
 キューの開放より先に、デーモンを停止するようにした。
(62)jp.ossc.nimbus.service.cache.FileCachedReferenceの変更
 ・直列化の実装を追加した。
 ・以下のコンストラクタの引数の型を変更した。
  ・public FileCachedReference(File, Serializable)→public FileCachedReference(File, Object)
 ・以下のメソッドの引数の型を変更した。
  ・protected void serializeObject(File, Serializable)→protected void serializeObject(File, Object)
 ・以下のコンストラクタを追加した。
  ・public FileCachedReference(File, Externalizer)
  ・public FileCachedReference(File, Object, Externalizer)
(63)jp.ossc.nimbus.service.cache.FileCacheFactoryServiceの変更
 以下のメソッドを追加した。
  ・public void setExternalizerServiceName(ServiceName)
  ・public ServiceName getExternalizerServiceName()
(64)jp.ossc.nimbus.service.cache.FileCacheFactoryServiceMBeanの変更
 以下のメソッドを追加した。
  ・public void setExternalizerServiceName(ServiceName)
  ・public ServiceName getExternalizerServiceName()
(65)jp.ossc.nimbus.service.cache.FileCacheMapFactoryServiceの変更
 以下のメソッドを追加した。
  ・public void setExternalizerServiceName(ServiceName)
  ・public ServiceName getExternalizerServiceName()
(66)jp.ossc.nimbus.service.cache.FileCacheMapFactoryServiceMBeanの変更
 以下のメソッドを追加した。
  ・public void setExternalizerServiceName(ServiceName)
  ・public ServiceName getExternalizerServiceName()
(67)jp.ossc.nimbus.service.cache.FileCacheMapServiceの変更
 以下のメソッドを追加した。
  ・public void setExternalizerServiceName(ServiceName)
  ・public ServiceName getExternalizerServiceName()
  ・public void setExternalizer(Externalizer)
  ・public Externalizer getExternalizer()
(68)jp.ossc.nimbus.service.cache.FileCacheMapServiceMBeanの変更
 以下のメソッドを追加した。
  ・public void setExternalizerServiceName(ServiceName)
  ・public ServiceName getExternalizerServiceName()
(69)jp.ossc.nimbus.service.cache.FileCacheServiceの変更
 以下のメソッドを追加した。
  ・public void setExternalizerServiceName(ServiceName)
  ・public ServiceName getExternalizerServiceName()
  ・public void setExternalizer(Externalizer)
  ・public Externalizer getExternalizer()
(70)jp.ossc.nimbus.service.cache.FileCacheServiceMBeanの変更
 以下のメソッドを追加した。
  ・public void setExternalizerServiceName(ServiceName)
  ・public ServiceName getExternalizerServiceName()
(71)jp.ossc.nimbus.service.cache.FileKeyCachedReferenceの変更
 ・直列化の実装を追加した。
 ・以下のコンストラクタの引数の型を変更した。
  ・public FileKeyCachedReference(Object, File, Serializable)→public FileKeyCachedReference(Object, File, Object)
 ・以下のメソッドの引数の型を変更した。
  ・protected void serializeObject(File, Serializable)→protected void serializeObject(File, Object)
 ・以下のコンストラクタを追加した。
  ・public FileKeyCachedReference(File, Externalizer)
  ・public FileKeyCachedReference(File, Object, Externalizer)
(72)jp.ossc.nimbus.service.cache.LFUOverflowAlgorithmServiceの変更
 ・KeyCachedReferenceの場合、displayReferenceCounts()でキーを表示するようにした。
 ・以下のメソッドを追加した。
  ・public boolean isCachedRatioCompare()
  ・public void setCachedRatioCompare(boolean)
  ・public void setRatioUnitTime(long)
(73)jp.ossc.nimbus.service.cache.LFUOverflowAlgorithmServiceMBeanの変更
 ・以下のメソッドを追加した。
  ・public boolean isCachedRatioCompare()
  ・public void setCachedRatioCompare(boolean)
  ・public void setRatioUnitTime(long)
(74)jp.ossc.nimbus.service.cache.MemoryCacheMapServiceの変更
 ・以下のメソッドを追加した。
  ・public void setPersistCacheMapServiceName(ServiceName name)
  ・public ServiceName getPersistCacheMapServiceName()
(75)jp.ossc.nimbus.service.cache.MemoryCacheMapServiceMBeanの変更
 ・以下のメソッドを追加した。
  ・public void setPersistCacheMapServiceName(ServiceName name)
  ・public ServiceName getPersistCacheMapServiceName()
(76)jp.ossc.nimbus.service.cache.MemoryCacheServiceの変更
 ・以下のメソッドを追加した。
  ・public void setPersistCacheServiceName(ServiceName name)
  ・public ServiceName getPersistCacheServiceName()
(77)jp.ossc.nimbus.service.cache.MemoryCacheServiceMBeanの変更
 ・以下のメソッドを追加した。
  ・public void setPersistCacheServiceName(ServiceName name)
  ・public ServiceName getPersistCacheServiceName()
(78)jp.ossc.nimbus.service.codemaster.CodeMasterServiceの変更
 反映時間が指定されていない場合、マスタ読み込み後時刻を適用していたが、マスタ読み込み開始時刻を適用するようにした。
(79)jp.ossc.nimbus.service.connection.TableCreatorServiceの変更
 ・以下のメソッドを追加した。
  ・public void setPreCreateTableQueries(String[])
  ・public String[] getPreCreateTableQueries()
  ・public void setPostCreateTableQueries(String[])
  ・public String[] getPostCreateTableQueries()
  ・public void setPreDropTableQueries(String[])
  ・public String[] getPreDropTableQueries()
  ・public void setPostDropTableQueries(String[])
  ・public String[] getPostDropTableQueries()
(80)jp.ossc.nimbus.service.context.ThreadContextServiceの変更
 以下のメソッドを追加した。
  ・public Map getDefaultMap()
(81)jp.ossc.nimbus.service.graphの変更
 サービスの構造を大幅にリファクタした。
(82)jp.ossc.nimbus.service.http.proxy.HttpRequestの変更
 内部クラスRequestBodyに以下のメソッドを追加した。
  ・public Matcher getMatcher(String)
(83)jp.ossc.nimbus.service.http.proxy.ProxyServerServiceの変更
 ・SSLソケットに対応した。
 ・以下のメソッドを追加した。
  ・public void setServerSocketFactoryServiceName(ServiceName)
  ・public ServiceName getServerSocketFactoryServiceName()
  ・public void setBindAddress(String)
  ・public String getBindAddress()
  ・public void setBacklog(int)
  ・public int getBacklog()
  ・public void setServerSocketFactory(ServerSocketFactory)
  ・public ServerSocketFactory getServerSocketFactory()
(84)jp.ossc.nimbus.service.http.proxy.ProxyServerServiceMBeanの変更
 ・以下のメソッドを追加した。
  ・public void setServerSocketFactoryServiceName(ServiceName)
  ・public ServiceName getServerSocketFactoryServiceName()
  ・public void setBindAddress(String)
  ・public String getBindAddress()
  ・public void setBacklog(int)
  ・public int getBacklog()
(85)jp.ossc.nimbus.service.interpreter.BeanShellInterpreterServiceの変更
 ・bsh.EvalErrorを、EvaluateExceptionのcauseに入れるようにした。
 ・以下のメソッドを追加した。
  ・public Object evaluate(String, Map)
  ・public void setSourceFileNames(String[])
  ・public String[] getSourceFileNames()
  ・public void setNewInterpreterByEvaluate(boolean)
  ・public boolean isNewInterpreterByEvaluate()
(86)jp.ossc.nimbus.service.interpreter.BeanShellInterpreterServiceMBeanの変更
 ・以下のメソッドを追加した。
  ・public void setSourceFileNames(String[])
  ・public String[] getSourceFileNames()
  ・public void setNewInterpreterByEvaluate(boolean)
  ・public boolean isNewInterpreterByEvaluate()
(87)jp.ossc.nimbus.service.interpreter.EvaluateExceptionの変更
 直列化できないcauseを渡された場合、直列化の際にcauseを直列化せずに、
 causeのメッセージをEvaluateExceptionのメッセージに追加して、直列化を行うようにした。
(88)jp.ossc.nimbus.service.interpreter.Interpreterの変更
 ・以下のメソッドを追加した。
  ・public Object evaluate(String, Map)
(89)jp.ossc.nimbus.service.jms.JMSConnectionFactoryServiceの変更
 以下のメソッドを追加した。
  ・public void setAutoReconnectMaxRetryCount(int)
  ・public int getAutoReconnectMaxRetryCount()
  ・public void setAutoReconnectRetryInterval(long)
  ・public long getAutoReconnectRetryInterval()
(90)jp.ossc.nimbus.service.jms.JMSConnectionFactoryServiceMBeanの変更
 以下のメソッドを追加した。
  ・public void setAutoReconnectMaxRetryCount(int)
  ・public int getAutoReconnectMaxRetryCount()
  ・public void setAutoReconnectRetryInterval(long)
  ・public long getAutoReconnectRetryInterval()
(91)jp.ossc.nimbus.service.jms.JMSQueueConnectionFactoryServiceの変更
 以下のメソッドを追加した。
  ・public void setAutoReconnectMaxRetryCount(int)
  ・public int getAutoReconnectMaxRetryCount()
  ・public void setAutoReconnectRetryInterval(long)
  ・public long getAutoReconnectRetryInterval()
(92)jp.ossc.nimbus.service.jms.JMSTopicConnectionFactoryServiceの変更
 以下のメソッドを追加した。
  ・public void setAutoReconnectMaxRetryCount(int)
  ・public int getAutoReconnectMaxRetryCount()
  ・public void setAutoReconnectRetryInterval(long)
  ・public long getAutoReconnectRetryInterval()
(93)jp.ossc.nimbus.service.jms.ReconnectableConnectionの変更
 以下のメソッドを追加した。
  ・public void setAutoReconnectMaxRetryCount(int)
  ・public int getAutoReconnectMaxRetryCount()
  ・public void setAutoReconnectRetryInterval(long)
  ・public long getAutoReconnectRetryInterval()
(94)jp.ossc.nimbus.service.journal.ThreadManagedJournalServiceの変更
 ・Queueの代わりに、QueueHandlerContainerも使用できるようにした。
 ・キューの開放より先に、デーモンを停止するようにした。
(95)jp.ossc.nimbus.service.journal.ImmutableJournalEditorServiceBaseの変更
 インデント編集処理の性能向上対策を行った。
(96)jp.ossc.nimbus.service.keepalive.AbstractKeepAliveCheckerSelectorServiceの変更
 以下のメソッドを追加した。
  ・public void setKeepOrder(boolean)
  ・public boolean isKeepOrder()
(97)jp.ossc.nimbus.service.keepalive.ClusterServiceの変更
 ・以下のメソッドを追加した。
  ・public void addClusterListener(ClusterListener)
  ・public void removeClusterListener(ClusterListener)
  ・public void setClusterListenerServiceNames(ServiceName[])
  ・public ServiceName[] getClusterListenerServiceNames()
  ・public void setClient(boolean)
  ・public boolean isClient()
  ・public void setOption(java.io.Serializable)
  ・public java.io.Serializable getOption()
 ・内部クラスGlobalUIDに以下のメソッドを追加した。
  ・public UID getUID()
  ・public InetAddress getAddress()
(98)jp.ossc.nimbus.service.keepalive.ClusterServiceMBeanの変更
 ・以下のメソッドを追加した。
  ・public void setClusterListenerServiceNames(ServiceName[])
  ・public ServiceName[] getClusterListenerServiceNames()
  ・public void setClient(boolean)
  ・public boolean isClient()
  ・public void setOption(java.io.Serializable)
  ・public java.io.Serializable getOption()
(99)jp.ossc.nimbus.service.log.DefaultCommonsLogFactoryServiceの変更
 内部で使用しているMapを同期化した。
(100)jp.ossc.nimbus.service.log.LogServiceの変更
 キューの開放より先に、デーモンを停止するようにした。
(101)jp.ossc.nimbus.service.performance.FileReportPerformanceStatisticsServiceの変更
 キューの開放より先に、デーモンを停止するようにした。
(102)jp.ossc.nimbus.service.proxy.RemoteClientServiceの変更
 ・InterceptorChain#invoke()を呼び出す前に、InterceptorChain#setCurrentInterceptorIndex()を呼び出して、
  インデックスを初期化するようにした。
 ・以下のメソッドを追加した。
  ・public void setInterceptorChainFactoryServiceName(ServiceName)
  ・public ServiceName getInterceptorChainFactoryServiceName()
(103)jp.ossc.nimbus.service.proxy.RemoteClientServiceMBeanの変更
 ・以下のメソッドを追加した。
  ・public void setInterceptorChainFactoryServiceName(ServiceName)
  ・public ServiceName getInterceptorChainFactoryServiceName()
(104)jp.ossc.nimbus.service.proxy.RemoteServiceServerServiceの変更
 ・InterceptorChain#invoke()を呼び出す前に、InterceptorChain#setCurrentInterceptorIndex()を呼び出して、
  インデックスを初期化するようにした。
 ・以下のメソッドを追加した。
  ・public void setInterceptorChainFactoryServiceName(ServiceName)
  ・public ServiceName getInterceptorChainFactoryServiceName()
(105)jp.ossc.nimbus.service.proxy.RemoteServiceServerServiceMBeanの変更
 ・以下のメソッドを追加した。
  ・public void setInterceptorChainFactoryServiceName(ServiceName)
  ・public ServiceName getInterceptorChainFactoryServiceName()
(106)jp.ossc.nimbus.service.proxy.RemoteServiceServerSessionBeanの変更
 ・InterceptorChain#invoke()を呼び出す前に、InterceptorChain#setCurrentInterceptorIndex()を呼び出して、
  インデックスを初期化するようにした。
(107)jp.ossc.nimbus.service.proxy.invoker.ClusterInvokerServiceの変更
 以下のメソッドを追加した。
  ・public void setBroadcast(boolean)
  ・public boolean isBroadcast()
(108)jp.ossc.nimbus.service.proxy.invoker.ClusterInvokerServiceMBeanの変更
 以下のメソッドを追加した。
  ・public void setBroadcast(boolean)
  ・public boolean isBroadcast()
(109)jp.ossc.nimbus.service.proxy.invoker.JMXClientRMICallInvokerServiceの変更
 以下のメソッドを追加した。
  ・public void setServiceURL(String)
  ・public String getServiceURL()
  ・public void setJMXConnectorEnvironment(Map)
  ・public Map getJMXConnectorEnvironment()
(110)jp.ossc.nimbus.service.proxy.invoker.JMXClientRMICallInvokerServiceMBeanの変更
 以下のメソッドを追加した。
  ・public void setServiceURL(String)
  ・public String getServiceURL()
  ・public void setJMXConnectorEnvironment(Map)
  ・public Map getJMXConnectorEnvironment()
(111)jp.ossc.nimbus.service.publish.DefaultPublishContainerServiceの変更
 キューの開放より先に、デーモンを停止するようにした。
(112)jp.ossc.nimbus.service.publish.DefaultPublisherServiceの変更
 ・キューの開放より先に、デーモンを停止するようにした。
 ・以下のメソッドを追加した。
  ・public void setMessageFilterServiceNames(ServiceName[])
  ・public ServiceName[] getMessageFilterServiceNames()
  ・public void setMessageFilters(MessageFilter[])
  ・public MessageFilter[] getMessageFilters()
(113)jp.ossc.nimbus.service.publish.DefaultPublisherServiceMBeanの変更
 以下のメソッドを追加した。
  ・public void setMessageFilterServiceNames(ServiceName[])
  ・public ServiceName[] getMessageFilterServiceNames()
(114)jp.ossc.nimbus.service.publish.Publisherの変更
 以下のメソッドを追加した。
  ・public List getMessageFilterList()
(115)jp.ossc.nimbus.service.queue.AbstractDistributedQueueSelectorServiceの変更
 以下のメソッドを追加した。
  ・public void setQueueFactoryServiceName(ServiceName)
  ・public ServiceName getQueueFactoryServiceName()
  ・public void setDistributedSize(int)
  ・public int getDistributedSize()
(116)jp.ossc.nimbus.service.queue.AbstractDistributedQueueSelectorServiceMBeanの変更
 以下のメソッドを追加した。
  ・public void setQueueFactoryServiceName(ServiceName)
  ・public ServiceName getQueueFactoryServiceName()
  ・public void setDistributedSize(int)
  ・public int getDistributedSize()
(117)jp.ossc.nimbus.service.queue.DelayQueueServiceの変更
 DelayQueueService.QueueElementを外部でnewしてpushできるようにした。
(118)jp.ossc.nimbus.service.queue.DistributedQueueHandlerContainerServiceの変更
 以下のメソッドを追加した。
  ・public int getQueueHandlerSize()
  ・public int getActiveQueueHandlerSize()
  ・public int getStandbyQueueHandlerSize()
(119)jp.ossc.nimbus.service.queue.DistributedQueueHandlerContainerServiceMBeanの変更
 以下のメソッドを追加した。
  ・public int getQueueHandlerSize()
  ・public int getActiveQueueHandlerSize()
  ・public int getStandbyQueueHandlerSize()
(120)jp.ossc.nimbus.service.queue.QueueHandlerContainerの変更
 以下のメソッドを追加した。
  ・public void start()
  ・public void stop()
  ・public int getQueueHandlerSize()
  ・public int getActiveQueueHandlerSize()
  ・public int getStandbyQueueHandlerSize()
(121)jp.ossc.nimbus.service.queue.QueueHandlerContainerServiceの変更
 ・QueueHandler#handleError(Object, Throwable)を呼び出して、例外がthrowされてきた場合は、リトライを終了するようにした。
 ・QueueServiceName属性が設定されていない場合は、同期モードで動作するようにした。
 ・以下のメソッドを追加した。
  ・public int getQueueHandlerSize()
  ・public int getActiveQueueHandlerSize()
  ・public int getStandbyQueueHandlerSize()
(122)jp.ossc.nimbus.service.queue.QueueHandlerContainerServiceMBeanの変更
 以下のメソッドを追加した。
  ・public int getQueueHandlerSize()
  ・public int getActiveQueueHandlerSize()
  ・public int getStandbyQueueHandlerSize()
(123)jp.ossc.nimbus.service.repository.MBeanServerRepositoryServiceの変更
 以下のメソッドを追加した。
  ・public void setCreateMBeanServer(boolean)
  ・public boolean isCreateMBeanServer()
(124)jp.ossc.nimbus.service.repository.MBeanServerRepositoryServiceMBeanの変更
 以下のメソッドを追加した。
  ・public void setCreateMBeanServer(boolean)
  ・public boolean isCreateMBeanServer()
(125)jp.ossc.nimbus.service.scheduler2.AbstractScheduleExecutorServiceの変更
 ・日跨ぎの時刻指定(25:00など)を可能にした。
 ・リトライ終了時刻を空にして、リトライ間隔を指定すると無限リトライするようにした。
(126)jp.ossc.nimbus.service.scheduler2.DefaultScheduleManagerServiceの変更
 ・以下のメソッドの引数を追加した。
  ・addSchedule(String, Date, String, Object, String[], long, Date, long)
    ↓
   addSchedule(String, Date, String, Object, String[], String, long, Date, long)
 ・スケジュールファイル削除時に、日付ディレクトリが空になると、ディレクトリを削除するようにした。
(127)jp.ossc.nimbus.service.scheduler2.DefaultScheduleManagerServiceMBeanの変更
 ・以下のメソッドの引数を追加した。
  ・addSchedule(String, Date, String, Object, String[], long, Date, long)
    ↓
   addSchedule(String, Date, String, Object, String[], String, long, Date, long)
(128)jp.ossc.nimbus.service.scheduler2.DefaultScheduleの変更
 ・以下のコンストラクタの引数を追加した。
  ・DefaultSchedule(String, Date, String, Object, String[])
    ↓
   DefaultSchedule(String, Date, String, Object, String[], String)
(129)jp.ossc.nimbus.service.scheduler2.DefaultScheduleMakerServiceの変更
 リトライ間隔を指定して、リトライ終了時刻を空にする状態を許容するようにした。
(130)jp.ossc.nimbus.service.scheduler2.DatabaseScheduleManagerServiceの変更
 ・以下のメソッドの引数を追加した。
  ・addSchedule(String, Date, String, Object, String[], long, Date, long)
    ↓
   addSchedule(String, Date, String, Object, String[], String, long, Date, long)
 ・日跨ぎの時刻指定(25:00など)を可能にした。
 ・リトライ終了時刻を空にして、リトライ間隔を指定すると無限リトライするようにした。
 ・スケジュール遅延監視のログ出力にタスク名を表示するようにした。
(131)jp.ossc.nimbus.service.scheduler2.DatabaseScheduleManagerServiceMBeanの変更
 以下のメソッドの引数を追加した。
  ・addSchedule(String, Date, String, Object, String[], long, Date, long)
    ↓
   addSchedule(String, Date, String, Object, String[], String, long, Date, long)
(132)jp.ossc.nimbus.service.scheduler2.DefaultScheduleMasterの変更
 ・Cloneableをimplementsした。
 ・以下のコンストラクタの引数を追加した。
  ・DefaultScheduleMaster(String, String, String, Object, Date, boolean, String[])
    ↓
   DefaultScheduleMaster(String, String, String, Object, Date, boolean, String[], String)
 ・以下のメソッドを追加した。
  ・public void setExecutorKey(String)
  ・public String getExecutorKey()
(133)jp.ossc.nimbus.service.scheduler2.ScheduleMasterの変更
 ・Cloneableをimplementsした。
 ・以下のメソッドを追加した。
  ・public void setExecutorKey(String)
  ・public String getExecutorKey()
(134)jp.ossc.nimbus.service.validator.MasterValidatorServiceの変更
 validate(Object)の引数で、対象のコードマスタRecordSetの主キーにあたるオブジェクトを渡して、
 その主キーが存在するかどうかを検証したい場合は、RecordSetSearchCondition属性を設定しなくても良いようにした。
(135)jp.ossc.nimbus.service.writer.DistributedCategoryServiceの変更
 以下のメソッドを追加した。
  ・public void setQueueFactoryServiceName(ServiceName)
  ・public ServiceName getQueueFactoryServiceName()
  ・public void setDistributedQueueSelectorServiceName(ServiceName)
  ・public ServiceName getDistributedQueueSelectorServiceName()
(136)jp.ossc.nimbus.service.writer.DistributedCategoryServiceMBeanの変更
 以下のメソッドを追加した。
  ・public void setQueueFactoryServiceName(ServiceName)
  ・public ServiceName getQueueFactoryServiceName()
  ・public void setDistributedQueueSelectorServiceName(ServiceName)
  ・public ServiceName getDistributedQueueSelectorServiceName()
(137)jp.ossc.nimbus.servlet.BeanFlowServletの変更
 ・アクションBeanFlowのフロー名を決定する処理をBeanFlowSelectorに委譲した。
  その影響で、初期化パラメータBeanFlowPathPostfixを削除して、初期化パラメータBeanFlowSelectorServiceNameを追加した。
 ・継承して拡張しやすいように、メソッドを分割した。
 ・validate成功した場合は、request属性にoutputを設定しないようにした。
(138)jp.ossc.nimbus.servlet.ServiceManagerFactoryServletの変更
 ・リンクのURLを相対パスに変更した。
 ・画面レイアウトを変更した。
 ・サーブレットの初期化が多重同時実行できないように同期化した。
(139)jp.ossc.nimbus.util.converter.DataSetJSONConverterの変更
 Number型でnullの値は、0ではなくnullと変換するようにした。
(140)jp.ossc.nimbus.util.converter.DataSetServletRequestParameterConverterの変更
 ・データセット名の区切り子を#から:に変更した。
 ・以下のメソッドを追加した。
  ・public void setDataSetPathPrefix(String)
  ・public String getDataSetPathPrefix()
  ・public void setDataSetDelimiter(String)
  ・public String getDataSetDelimiter()
(141)jp.ossc.nimbus.util.converter.DataSetXMLConverterの変更
 ・以下のメソッドを追加した。
  ・public void setDocumentBuilderFactoryClassName(String)
(142)jp.ossc.nimbus.util.converter.DataSetXpathConverterの変更
 ・以下のメソッドを追加した。
  ・public void setDocumentBuilderFactoryClassName(String)
(143)jp.ossc.nimbus.util.converter.DateFormatConverterの変更
 ・以下のメソッドを追加した。
  ・public void setNullString(String)
  ・public String getNullString()
(144)jp.ossc.nimbus.util.converter.DateFormatConverterの変更
 ・以下のメソッドを追加した。
  ・public boolean isUseNotApplicable()
  ・public void setUseNotApplicable(boolean)
  ・public Byte getNotApplicableForByte()
  ・public void setNotApplicableForByte(Byte)
  ・public Short getNotApplicableForShort()
  ・public void setNotApplicableForShort(Short)
  ・public Integer getNotApplicableForInt()
  ・public void setNotApplicableForInt(Integer)
  ・public Long getNotApplicableForLong()
  ・public void setNotApplicableForLong(Long)
  ・public Float getNotApplicableForFloat()
  ・public void setNotApplicableForFloat(Float)
  ・public Double getNotApplicableForDouble()
  ・public void setNotApplicableForDouble(Double)
  ・public BigInteger getNotApplicableForBigInteger()
  ・public void setNotApplicableForBigInteger(BigInteger)
  ・public BigDecimal getNotApplicableForBigDecimal()
  ・public void setNotApplicableForBigDecimal(BigDecimal)
  ・public String getNotApplicableStringForByte()
  ・public void setNotApplicableStringForByte(String)
  ・public String getNotApplicableStringForShort()
  ・public void setNotApplicableStringForShort(String)
  ・public String getNotApplicableStringForInt()
  ・public void setNotApplicableStringForInt(String)
  ・public String getNotApplicableStringForLong()
  ・public void setNotApplicableStringForLong(String)
  ・public String getNotApplicableStringForFloat()
  ・public void setNotApplicableStringForFloat(String)
  ・public String getNotApplicableStringForDouble()
  ・public void setNotApplicableStringForDouble(String)
  ・public String getNotApplicableStringForBigInteger()
  ・public void setNotApplicableStringForBigInteger(String)
  ・public String getNotApplicableStringForBigDecimal()
  ・public void setNotApplicableStringForBigDecimal(String)
(145)jp.ossc.nimbus.util.converter.PaddingStringConverterの変更
 ・以下のメソッドを追加した。
  ・public boolean isCountTwiceByZenkaku()
  ・public void setCountTwiceByZenkaku(boolean)
(146)jp.ossc.nimbus.util.sql.WrappedPreparedStatementの変更
 ・SQLMetricsCollectorに実行したSQL情報を登録するようにした。
 ・以下のメソッドを追加した。
  ・public void setMaxJournalBatchSize(int)
(147)jp.ossc.nimbus.util.sql.WrappedStatementの変更
 ・SQLMetricsCollectorに実行したSQL情報を登録するようにした。
 ・以下のメソッドを追加した。
  ・public void setSQLMetricsCollector(SQLMetricsCollector)
  ・public void setMaxJournalBatchSize(int)
(148)jp.ossc.nimbus.util.validator.CombinationValidatorの変更
 ・or で、Validatorを繋いでいる時に、orの前条件がtrueの時は、後続の条件を検証せずにtrueを返すように改善した。
 ・andで、Validatorを繋いでいる時に、andの前条件がfalseの時は、後続の条件を検証せずにfalseを返すように改善した。
(149)jp.ossc.nimbus.util.validator.ConditionValidatorの変更
 条件式で、valueを参照したい時に、@で囲まなくても良いようにした。

3. 追加
(1)jp.ossc.nimbus.beans.BeanPropertyEditorを追加
 jp.ossc.nimbus.beans.PropertyのPropertyEditorを新規追加した。
(2)jp.ossc.nimbus.beans.BooleanEditorを追加
 booleanのPropertyEditorを新規追加した。
(3)jp.ossc.nimbus.beans.ConstructorEditorを追加
 ・boolean型のPropertyEditorとして、BooleanEditorを登録した。
 ・java.lang.reflect.ConstructorのPropertyEditorとして、ConstructorPropertyEditorを登録した。
 ・jp.ossc.nimbus.beans.PropertyのPropertyEditorとして、BeanPropertyEditorを登録した。
 ・jp.ossc.nimbus.beans.Property[]のPropertyEditorとして、PropertyArrayEditorを登録した。
(4)jp.ossc.nimbus.beans.PropertyAccessを追加
(5)jp.ossc.nimbus.beans.PropertyArrayEditorを追加
 jp.ossc.nimbus.beans.Property[]のPropertyEditorを新規追加した。
(6)jp.ossc.nimbus.core.IfDefMetaDataを追加
 このクラスの追加によって、サービス定義でifdef要素を定義できるようにした。
(7)jp.ossc.nimbus.core.ManagerPropertyMetaDataを追加
(8)jp.ossc.nimbus.core.PropertyEditorMetaDataを追加
(9)jp.ossc.nimbus.core.PropertyEditorsMetaDataを追加
(10)jp.ossc.nimbus.core.PropertyMetaDataを追加
(11)jp.ossc.nimbus.core.RefURLMetaDataを追加
(12)jp.ossc.nimbus.core.ServerPropertyMetaDataを追加
(13)jp.ossc.nimbus.core.ServiceControlServiceを追加
 サービスをまとめて制御するサービスを追加した。
(14)jp.ossc.nimbus.core.ServiceControlServiceMBeanを追加
(15)jp.ossc.nimbus.service.aop.interceptor.BeanFlowMetricsInterceptorServiceを追加
 BeanFlowの処理時間の統計を取得するInterceptorサービスを新規追加した。
(16)jp.ossc.nimbus.service.aop.interceptor.BeanFlowMetricsInterceptorServiceMBeanを追加
(17)jp.ossc.nimbus.service.aop.interceptor.BreakPointを追加
(18)jp.ossc.nimbus.service.aop.interceptor.BreakPointInterceptorServiceを追加
 ブレークポイントを挿入するInterceptorサービスを新規追加した。
(19)jp.ossc.nimbus.service.aop.interceptor.BreakPointInterceptorServiceMBeanを追加
(20)jp.ossc.nimbus.service.aop.interceptor.CheckPointを追加
(21)jp.ossc.nimbus.service.aop.interceptor.CheckPointInterceptorServiceを追加
 処理が通過した事を示すチェックポイントを挿入するInterceptorサービスを新規追加した。
(22)jp.ossc.nimbus.service.aop.interceptor.CheckPointInterceptorServiceMBeanを追加
(23)jp.ossc.nimbus.service.aop.interceptor.CheckPointTracerを追加
(24)jp.ossc.nimbus.service.aop.interceptor.CheckPointTracerServiceを追加
 チェックポイントを追跡するサービスを新規追加した。
(25)jp.ossc.nimbus.service.aop.interceptor.CheckPointTracerServiceMBeanを追加
(26)jp.ossc.nimbus.service.aop.interceptor.ExceptionHandlerを追加
(27)jp.ossc.nimbus.service.aop.interceptor.DefaultExceptionHandlerServiceを追加
 ExceptionHandlerのデフォルト実装サービスを新規追加した。
(28)jp.ossc.nimbus.service.aop.interceptor.DefaultExceptionHandlerServiceMBeanを追加
(29)jp.ossc.nimbus.service.aop.interceptor.ExceptionHandlingInterceptorServiceを追加
 例外処理を行うInterceptorサービスを新規追加した。
(30)jp.ossc.nimbus.service.aop.interceptor.ExceptionHandlingInterceptorServiceMBeanを追加
(31)jp.ossc.nimbus.service.aop.interceptor.ExceptionThrowを追加
(32)jp.ossc.nimbus.service.cache.SerializeCachedReferenceを追加
(33)jp.ossc.nimbus.service.cache.SerializedMemoryCacheMapServiceを追加
 直列化してキャッシュするCacheMapサービスの実装を新規追加した。
(34)jp.ossc.nimbus.service.cache.SerializedMemoryCacheMapServiceMBeanを追加
(35)jp.ossc.nimbus.service.cache.SerializedMemoryCacheServiceを追加
 直列化してキャッシュするCacheサービスの実装を新規追加した。
(36)jp.ossc.nimbus.service.cache.SerializedMemoryCacheServiceMBeanを追加
(37)jp.ossc.nimbus.service.cache.SerializeKeyCachedReferenceを追加
(38)jp.ossc.nimbus.service.connection.DefaultPersistentManagerServiceを追加
 データベースとのO/R Mappingを行うPersistentManagerサービスのデフォルト実装を新規追加した。
(39)jp.ossc.nimbus.service.connection.DefaultPersistentManagerServiceMBeanを追加
(40)jp.ossc.nimbus.service.connection.PersistentExceptionを追加
(41)jp.ossc.nimbus.service.connection.PersistentManagerを追加
(42)jp.ossc.nimbus.service.connection.SQLMetricsCollectorを追加
(43)jp.ossc.nimbus.service.connection.SQLMetricsCollectorServiceを追加
 SQLの性能統計を取得するSQLMetricsCollectorサービスの実装を新規追加した。
(44)jp.ossc.nimbus.service.connection.SQLMetricsCollectorServiceMBeanを追加
(45)jp.ossc.nimbus.service.converter.CodeMasterConverterを追加
(46)jp.ossc.nimbus.service.converter.CodeMasterConverterServiceを追加
 CodeMasterFinderから特定のマスタを取得して、CodeMasterConverterに変換を委譲するConverterサービスの実装を新規追加した。
(47)jp.ossc.nimbus.service.converter.CodeMasterConverterServiceMBeanを追加
(48)jp.ossc.nimbus.service.converter.RecordSetCodeMasterConverterを追加
 CodeMasterFinderから取得したマスタRecordSetから指定されたレコードを取得するCodeMasterConverterインタフェースの実装を新規追加した。
(49)jp.ossc.nimbus.service.ftp.FTPClientを追加
(50)jp.ossc.nimbus.service.ftp.FTPClientFactoryを追加
(51)jp.ossc.nimbus.service.ftp.FTPErrorResponseExceptionを追加
(52)jp.ossc.nimbus.service.ftp.FTPExceptionを追加
(53)jp.ossc.nimbus.service.ftp.ftpclient.FTPClientFactoryServiceを追加
 Jakarta Commons NetのFTPクライアントを使ったFTPClientFactoryサービスの実装を新規追加した。
(54)jp.ossc.nimbus.service.ftp.ftpclient.FTPClientFactoryServiceMBeanを追加
(55)jp.ossc.nimbus.service.ftp.ftpclient.FTPClientImplを追加
(56)jp.ossc.nimbus.service.graph.CSVFileTimeSeriesCollectionFactoryServiceを追加
 CSV形式のファイルからデータを読み込むDatasetFactoryサービスの実装を新規追加した。
(57)jp.ossc.nimbus.service.graph.CSVFileTimeSeriesCollectionFactoryServiceMBeanを追加
(58)jp.ossc.nimbus.service.graph.DatasetConnectionを追加
(59)jp.ossc.nimbus.service.graph.OHLCDatasetFactoryServiceを追加
 リファクタによってOHLC系のDatasetFactoryサービスを抽象化したクラスを新規追加した。
(60)jp.ossc.nimbus.service.graph.OHLCDatasetFactoryServiceMBeanを追加
(61)jp.ossc.nimbus.service.graph.SeriesCursorを追加
(62)jp.ossc.nimbus.service.graph.TimeSeriesCollectionFactoryServiceを追加
 リファクタによって時系列系のDatasetFactoryサービスを抽象化したクラスを新規追加した。
(63)jp.ossc.nimbus.service.graph.TimeSeriesCollectionFactoryServiceMBeanを追加
(64)jp.ossc.nimbus.service.io.Externalizerを追加
(65)jp.ossc.nimbus.service.io.SerializableExternalizerServiceを追加
 オブジェクトを直列化するExternalizerサービスの実装を新規追加した。
(66)jp.ossc.nimbus.service.io.SerializableExternalizerServiceMBeanを追加
(67)jp.ossc.nimbus.service.jndi.DummyJndiFinderServiceを追加
 JNDIに接続しないダミーのJndiFinderサービスの実装を新規追加した。
(68)jp.ossc.nimbus.service.jndi.DummyJndiFinderServiceMBeanを追加
(69)jp.ossc.nimbus.service.journal.editor.DataSetJSONJournalEditorServiceを追加
 DataSetをJSON形式の文字列に編集するJournalEditorサービスの実装を新規追加した。
(70)jp.ossc.nimbus.service.journal.editor.DataSetJSONJournalEditorServiceMBeanを追加
(71)jp.ossc.nimbus.service.journal.editor.HttpServletRequestJSONJournalEditorServiceを追加
 HttpServletRequestをJSON形式の文字列に編集するJournalEditorサービスの実装を新規追加した。
(72)jp.ossc.nimbus.service.journal.editor.HttpServletRequestJSONJournalEditorServiceMBeanを追加
(73)jp.ossc.nimbus.service.journal.editor.HttpSessionJSONJournalEditorServiceを追加
 HttpSessionをJSON形式の文字列に編集するJournalEditorサービスの実装を新規追加した。
(74)jp.ossc.nimbus.service.journal.editor.HttpSessionJSONJournalEditorServiceMBeanを追加
(75)jp.ossc.nimbus.service.journal.editor.JournalHttpServletResponseWrapperJSONJournalEditorServiceを追加
 JournalHttpServletResponseWrapperをJSON形式の文字列に編集するJournalEditorサービスの実装を新規追加した。
(76)jp.ossc.nimbus.service.journal.editor.JournalHttpServletResponseWrapperJSONJournalEditorServiceMBeanを追加
(77)jp.ossc.nimbus.service.journal.editor.JournalServletResponseWrapperJSONJournalEditorServiceを追加
 JournalServletResponseWrapperをJSON形式の文字列に編集するJournalEditorサービスの実装を新規追加した。
(78)jp.ossc.nimbus.service.journal.editor.JournalServletResponseWrapperJSONJournalEditorServiceMBeanを追加
(79)jp.ossc.nimbus.service.journal.editor.JSONJournalEditorServiceを追加
 オブジェクトをJSON形式の文字列に編集するJournalEditorサービスの実装を新規追加した。
(80)jp.ossc.nimbus.service.journal.editor.JSONJournalEditorServiceMBeanを追加
(81)jp.ossc.nimbus.service.journal.editor.MethodCallJournalJSONJournalEditorServiceを追加
 MethodCallJournalDataをJSON形式の文字列に編集するJournalEditorサービスの実装を新規追加した。
(82)jp.ossc.nimbus.service.journal.editor.MethodCallJournalJSONJournalEditorServiceMBeanを追加
(83)jp.ossc.nimbus.service.journal.editor.MethodJournalJSONJournalEditorServiceを追加
 MethodJournalDataをJSON形式の文字列に編集するJournalEditorサービスの実装を新規追加した。
(84)jp.ossc.nimbus.service.journal.editor.MethodJournalJSONJournalEditorServiceMBeanを追加
(85)jp.ossc.nimbus.service.journal.editor.MethodReturnJournalJSONJournalEditorServiceを追加
 MethodReturnJournalDataをJSON形式の文字列に編集するJournalEditorサービスの実装を新規追加した。
(86)jp.ossc.nimbus.service.journal.editor.MethodReturnJournalJSONJournalEditorServiceMBeanを追加
(87)jp.ossc.nimbus.service.journal.editor.MethodThrowJournalJSONJournalEditorServiceを追加
 MethodThrowJournalDataをJSON形式の文字列に編集するJournalEditorサービスの実装を新規追加した。
(88)jp.ossc.nimbus.service.journal.editor.MethodThrowJournalJSONJournalEditorServiceMBeanを追加
(89)jp.ossc.nimbus.service.journal.editor.RequestJournalJSONJournalEditorServiceを追加
 RequestJournalをJSON形式の文字列に編集するJournalEditorサービスの実装を新規追加した。
(90)jp.ossc.nimbus.service.journal.editor.ServletRequestJSONJournalEditorServiceを追加
 ServletRequestをJSON形式の文字列に編集するJournalEditorサービスの実装を新規追加した。
(91)jp.ossc.nimbus.service.journal.editor.ServletRequestJSONJournalEditorServiceMBeanを追加
(92)jp.ossc.nimbus.service.journal.editor.ServletResponseJSONJournalEditorServiceを追加
 ServletResponseをJSON形式の文字列に編集するJournalEditorサービスの実装を新規追加した。
(93)jp.ossc.nimbus.service.journal.editor.ServletResponseJSONJournalEditorServiceMBeanを追加
(94)jp.ossc.nimbus.service.keepalive.ClusterListenerを追加
(95)jp.ossc.nimbus.service.keepalive.DefaultClusterListenerServiceを追加
 ClusterListenerサービスのデフォルト実装を新規追加した。
(96)jp.ossc.nimbus.service.keepalive.DefaultClusterListenerServiceMBeanを追加
(97)jp.ossc.nimbus.service.publish.MessageFilterを追加
(98)jp.ossc.nimbus.service.queue.AsynchContextを追加
(99)jp.ossc.nimbus.service.queue.BeanFlowAsynchContextを追加
(100)jp.ossc.nimbus.service.queue.BeanFlowInvokerCallQueueHandlerServiceを追加
 BeanFlowInvokerを呼び出すQueueHandlerサービスの実装を新規追加した。
(101)jp.ossc.nimbus.service.queue.BeanFlowInvokerCallQueueHandlerServiceMBeanを追加
(102)jp.ossc.nimbus.service.queue.DistributedQueueServiceを追加
 分散キューイングを行うQueueサービスの実装を新規追加した。
(103)jp.ossc.nimbus.service.queue.DistributedQueueServiceMBeanを追加
(104)jp.ossc.nimbus.service.queue.SimpleDistributedQueueSelectorServiceを追加
 分散キューイングの振り分けを行うQueueSelectorサービスのデフォルト実装を新規追加した。
(105)jp.ossc.nimbus.service.queue.SimpleDistributedQueueSelectorServiceMBeanを追加
(106)jp.ossc.nimbus.service.resource.jms.JMSSessionFactoryServiceを追加
 jp.ossc.nimbus.service.jms.JMSSessionFactoryをラップしたResourceFactoryサービスの実装を新規追加した。
(107)jp.ossc.nimbus.service.resource.jms.JMSSessionFactoryServiceMBeanを追加
(108)jp.ossc.nimbus.service.resource.jms.JMSSessionTransactionResourceを追加
(109)jp.ossc.nimbus.service.system.CpuTimesを追加
(110)jp.ossc.nimbus.service.system.MemoryInfoを追加
(111)jp.ossc.nimbus.service.system.OperationSystemを追加
(112)jp.ossc.nimbus.service.system.ProcessInfoを追加
(113)jp.ossc.nimbus.service.system.javasysmon.OperationSystemServiceを追加
 com.jezhumble.javasysmon.JavaSysMonを使ったOperationSystemサービスの実装を新規追加した。
(114)jp.ossc.nimbus.service.system.javasysmon.OperationSystemServiceMBeanを追加
(115)jp.ossc.nimbus.service.transaction.JndiTransactionManagerFactoryServiceを追加
 JNDIサーバからTransactionManagerを取得するTransactionManagerFactoryサービスの実装を新規追加した。
(116)jp.ossc.nimbus.service.transaction.JndiTransactionManagerFactoryServiceMBeanを追加
(117)jp.ossc.nimbus.service.transaction.ReflectionTransactionManagerFactoryServiceを追加
 reflectionを使ってTransactionManagerを生成するTransactionManagerFactoryサービスの実装を新規追加した。
(118)jp.ossc.nimbus.service.transaction.ReflectionTransactionManagerFactoryServiceMBeanを追加
(119)jp.ossc.nimbus.service.transaction.TransactionManagerFactoryを追加
(120)jp.ossc.nimbus.service.transaction.TransactionManagerFactoryExceptionを追加
(121)jp.ossc.nimbus.servlet.BeanFlowSelectorを追加
(122)jp.ossc.nimbus.servlet.DefaultBeanFlowSelectorServiceを追加
 BeanFlowSelectorサービスのデフォルト実装を新規追加した。
(123)jp.ossc.nimbus.servlet.DefaultBeanFlowSelectorServiceMBeanを追加
(124)jp.ossc.nimbus.servlet.MappingBeanFlowSelectorServiceを追加
 リクエストパスとBeanFlow名のマッピングを定義するBeanFlowSelectorサービスの実装を新規追加した。
(125)jp.ossc.nimbus.servlet.MappingBeanFlowSelectorServiceMBeanを追加
(126)jp.ossc.nimbus.util.converter.DecimalScaleConverterを追加
 小数の桁丸めを行うConverterの実装を新規追加した。
(127)jp.ossc.nimbus.util.converter.NullConverterを追加
 null参照を変換するConverterの実装を新規追加した。
(128)jp.ossc.nimbus.util.converter.NumberCastConverterを追加
 数値をキャストするConverterの実装を新規追加した。
(129)jp.ossc.nimbus.util.net.ServerSocketを追加
(130)jp.ossc.nimbus.util.net.ServerSocketFactoryを追加
(131)jp.ossc.nimbus.util.net.SocketFactoryを追加
(132)jp.ossc.nimbus.util.net.SSLServerSocketFactoryを追加
(133)jp.ossc.nimbus.util.net.SSLServerSocketWrapperを追加