001/*
002 * Copyright (c) 2009 The openGion Project.
003 *
004 * Licensed under the Apache License, Version 2.0 (the "License");
005 * you may not use this file except in compliance with the License.
006 * You may obtain a copy of the License at
007 *
008 *     http://www.apache.org/licenses/LICENSE-2.0
009 *
010 * Unless required by applicable law or agreed to in writing, software
011 * distributed under the License is distributed on an "AS IS" BASIS,
012 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND,
013 * either express or implied. See the License for the specific language
014 * governing permissions and limitations under the License.
015 */
016package org.opengion.fukurou.system;                                                            // 6.4.2.0 (2016/01/29) package変更 fukurou.util → fukurou.system
017
018import java.nio.charset.Charset;                // 5.5.2.6 (2012/05/25)
019
020/**
021 * 共通的に使用される固定値を集約したクラスです。
022 *
023 * 全変数は、public static final 宣言されています。
024 *
025 * @og.rev 6.1.0.0 (2014/12/26) 固定値を集約したクラス対応
026 * @og.rev 6.4.2.0 (2016/01/29) package変更 fukurou.util → fukurou.system
027 *
028 * @og.group その他
029 *
030 * @version  6.0
031 * @author       Kazuhiko Hasegawa
032 * @since    JDK8.0,
033 */
034public final class HybsConst {
035
036        /** バッファの初期容量を設定する固定値(通常より若干多い目)。  {@value}  */
037        public static final int BUFFER_SMALL  = 100;
038
039        /** バッファの初期容量を設定する固定値(通常より多い目)。  {@value}  */
040        public static final int BUFFER_MIDDLE = 200;
041
042        /** バッファの初期容量を設定する固定値(通常より大幅に多い目)。  {@value} */
043        public static final int BUFFER_LARGE  = 500;
044
045        /** システム依存の改行記号(String)。        */
046        public static final String CR = System.getProperty("line.separator");
047
048        /** HTMLでの改行記号( <br /> )。 */
049        // 7.0.1.0 (2018/10/15) XHTML → HTML5 対応(空要素の、"/>" 止めを、">" に変更します)。
050//      public static final String BR = "<br />" + CR ;
051        public static final String BR = "<br>" + CR ;
052
053        /** システム依存のファイルセパレーター文字(char)。  */
054        public static final char FS = System.getProperty("file.separator").charAt(0);
055
056        /** タブ文字(char)。 */
057        public static final char TAB = '\t';
058
059        /**
060         * プラットフォーム依存のデフォルトの Charset です。
061         * プラットフォーム依存性を考慮する場合、エンコード指定で作成しておく事をお勧めします。
062         *
063         * @og.rev 5.5.2.6 (2012/05/25) findbugs対応
064         * @og.rev 6.4.2.0 (2016/01/29) fukurou.util.StringUtil → fukurou.system.HybsConst に変更
065         */
066        public static final Charset DEFAULT_CHARSET = Charset.defaultCharset() ;
067
068        /**
069         * ファイル等を読み取る場合のデフォルトエンコードを指定します。
070         * 通常は、UTF-8 にしておきます。
071         *
072         * @og.rev 6.4.5.1 (2016/04/28) ファイル等を読み取る場合のデフォルトエンコードを指定します。
073         */
074        public static final String UTF_8 = "UTF-8" ;
075
076        /**
077         * データ検索時のフェッチサイズ  {@value}
078         * 
079         * ORACLEのデフォルトは、10です。
080         * 最適なフェッチ・サイズは、予想される結果サイズの半分または4分の1です。結果セットのサイズかどうかわからず、
081         * フェッチ・サイズの設定を大きくしすぎたり小さくしすぎたりすると、パフォーマンスが低下することに注意してください。 
082         * openGionでは、検索時の最大件数を、1000にしていますが、オーバー判定のための+1件、余分に取得しています。
083         * よって、1/4の250件に、プラスして、251件を、初期値にしておきます。
084         *
085         * @og.rev 6.9.4.1 (2018/04/09) 共通の固定値として登録
086         */
087        public static final int DB_FETCH_SIZE = 251 ;
088
089        /**
090         * データ登録時のバッチサイズ  {@value}
091         * 
092         * JDBC 2.0仕様では、これをバッチ更新(batch updates)と呼びます。
093         * 標準のバッチ更新は、手動の明示的なモデルです。バッチ値は設定されていません。
094         * 手動で操作をバッチに追加し、明示的にバッチ処理のタイミングを選択します。 
095         * openGionでは、検索時のページ表示件数を、100にしていますので、初期値を、 100件にしておきます。
096         *
097         * @og.rev 6.9.4.1 (2018/04/09) 共通の固定値として登録
098         */
099        public static final int DB_BATCH_SIZE = 100 ;
100
101        /**
102         * デフォルトコンストラクターをprivateにして、
103         * オブジェクトの生成をさせないようにする。
104         */
105        private HybsConst() {}
106}