mirror of
https://github.com/CarmJos/EasyConfiguration.git
synced 2026-06-04 10:38:19 +08:00
style: Reformatted code with .editorconfig
This commit is contained in:
@@ -1,3 +1,6 @@
|
||||
# configured Javadoc
|
||||
|
||||
Based on [Github Pages](https://pages.github.com/), please see [JavaDoc](https://carmjos.github.io/configured) 。
|
||||
Based
|
||||
on [Github Pages](https://pages.github.com/),
|
||||
please
|
||||
see [JavaDoc](https://carmjos.github.io/configured) 。
|
||||
|
||||
+346
@@ -0,0 +1,346 @@
|
||||
root = true
|
||||
|
||||
[*]
|
||||
charset = utf-8
|
||||
end_of_line = lf
|
||||
insert_final_newline = true
|
||||
trim_trailing_whitespace = true
|
||||
indent_style = space
|
||||
tab_width = 4
|
||||
|
||||
[*.java]
|
||||
indent_size = 4
|
||||
max_line_length = 120
|
||||
ij_java_align_consecutive_assignments = false
|
||||
ij_java_align_consecutive_variable_declarations = false
|
||||
ij_java_align_group_field_declarations = false
|
||||
ij_java_align_multiline_annotation_parameters = false
|
||||
ij_java_align_multiline_array_initializer_expression = false
|
||||
ij_java_align_multiline_assignment = false
|
||||
ij_java_align_multiline_binary_operation = false
|
||||
ij_java_align_multiline_chained_methods = false
|
||||
ij_java_align_multiline_deconstruction_list_components = true
|
||||
ij_java_align_multiline_extends_list = false
|
||||
ij_java_align_multiline_for = true
|
||||
ij_java_align_multiline_method_parentheses = false
|
||||
ij_java_align_multiline_parameters = true
|
||||
ij_java_align_multiline_parameters_in_calls = false
|
||||
ij_java_align_multiline_parenthesized_expression = false
|
||||
ij_java_align_multiline_records = true
|
||||
ij_java_align_multiline_resources = true
|
||||
ij_java_align_multiline_ternary_operation = false
|
||||
ij_java_align_multiline_text_blocks = false
|
||||
ij_java_align_multiline_throws_list = false
|
||||
ij_java_align_subsequent_simple_methods = false
|
||||
ij_java_align_throws_keyword = false
|
||||
ij_java_align_types_in_multi_catch = true
|
||||
ij_java_annotation_new_line_in_record_component = false
|
||||
ij_java_annotation_parameter_wrap = off
|
||||
ij_java_array_initializer_new_line_after_left_brace = false
|
||||
ij_java_array_initializer_right_brace_on_new_line = false
|
||||
ij_java_array_initializer_wrap = off
|
||||
ij_java_assert_statement_colon_on_next_line = false
|
||||
ij_java_assert_statement_wrap = off
|
||||
ij_java_assignment_wrap = off
|
||||
ij_java_binary_operation_sign_on_next_line = false
|
||||
ij_java_binary_operation_wrap = off
|
||||
ij_java_blank_lines_after_anonymous_class_header = 0
|
||||
ij_java_blank_lines_after_class_header = 0
|
||||
ij_java_blank_lines_after_imports = 1
|
||||
ij_java_blank_lines_after_package = 1
|
||||
ij_java_blank_lines_around_class = 1
|
||||
ij_java_blank_lines_around_field = 0
|
||||
ij_java_blank_lines_around_field_in_interface = 0
|
||||
ij_java_blank_lines_around_field_with_annotations = 0
|
||||
ij_java_blank_lines_around_initializer = 1
|
||||
ij_java_blank_lines_around_method = 1
|
||||
ij_java_blank_lines_around_method_in_interface = 1
|
||||
ij_java_blank_lines_before_class_end = 0
|
||||
ij_java_blank_lines_before_imports = 1
|
||||
ij_java_blank_lines_before_method_body = 0
|
||||
ij_java_blank_lines_before_package = 0
|
||||
ij_java_blank_lines_between_record_components = 0
|
||||
ij_java_block_brace_style = end_of_line
|
||||
ij_java_block_comment_add_space = false
|
||||
ij_java_block_comment_at_first_column = true
|
||||
ij_java_builder_methods =
|
||||
ij_java_call_parameters_new_line_after_left_paren = false
|
||||
ij_java_call_parameters_right_paren_on_new_line = false
|
||||
ij_java_call_parameters_wrap = off
|
||||
ij_java_case_statement_on_separate_line = true
|
||||
ij_java_catch_on_new_line = false
|
||||
ij_java_class_annotation_wrap = split_into_lines
|
||||
ij_java_class_brace_style = end_of_line
|
||||
ij_java_class_count_to_use_import_on_demand = 5
|
||||
ij_java_class_names_in_javadoc = 1
|
||||
ij_java_deconstruction_list_wrap = normal
|
||||
ij_java_do_not_indent_top_level_class_members = false
|
||||
ij_java_do_not_wrap_after_single_annotation = false
|
||||
ij_java_do_not_wrap_after_single_annotation_in_parameter = false
|
||||
ij_java_do_while_brace_force = never
|
||||
ij_java_doc_add_blank_line_after_description = true
|
||||
ij_java_doc_add_blank_line_after_param_comments = false
|
||||
ij_java_doc_add_blank_line_after_return = false
|
||||
ij_java_doc_add_p_tag_on_empty_lines = true
|
||||
ij_java_doc_align_exception_comments = true
|
||||
ij_java_doc_align_param_comments = true
|
||||
ij_java_doc_do_not_wrap_if_one_line = false
|
||||
ij_java_doc_enable_formatting = true
|
||||
ij_java_doc_enable_leading_asterisks = true
|
||||
ij_java_doc_indent_on_continuation = false
|
||||
ij_java_doc_keep_empty_lines = true
|
||||
ij_java_doc_keep_empty_parameter_tag = true
|
||||
ij_java_doc_keep_empty_return_tag = true
|
||||
ij_java_doc_keep_empty_throws_tag = true
|
||||
ij_java_doc_keep_invalid_tags = true
|
||||
ij_java_doc_param_description_on_new_line = false
|
||||
ij_java_doc_preserve_line_breaks = false
|
||||
ij_java_doc_use_throws_not_exception_tag = true
|
||||
ij_java_else_on_new_line = false
|
||||
ij_java_entity_dd_prefix =
|
||||
ij_java_entity_dd_suffix = EJB
|
||||
ij_java_entity_eb_prefix =
|
||||
ij_java_entity_eb_suffix = Bean
|
||||
ij_java_entity_hi_prefix =
|
||||
ij_java_entity_hi_suffix = Home
|
||||
ij_java_entity_lhi_prefix = Local
|
||||
ij_java_entity_lhi_suffix = Home
|
||||
ij_java_entity_li_prefix = Local
|
||||
ij_java_entity_li_suffix =
|
||||
ij_java_entity_pk_class = java.lang.String
|
||||
ij_java_entity_ri_prefix =
|
||||
ij_java_entity_ri_suffix =
|
||||
ij_java_entity_vo_prefix =
|
||||
ij_java_entity_vo_suffix = VO
|
||||
ij_java_enum_constants_wrap = off
|
||||
ij_java_enum_field_annotation_wrap = off
|
||||
ij_java_extends_keyword_wrap = off
|
||||
ij_java_extends_list_wrap = off
|
||||
ij_java_field_annotation_wrap = split_into_lines
|
||||
ij_java_field_name_prefix =
|
||||
ij_java_field_name_suffix =
|
||||
ij_java_filter_class_prefix =
|
||||
ij_java_filter_class_suffix =
|
||||
ij_java_filter_dd_prefix =
|
||||
ij_java_filter_dd_suffix =
|
||||
ij_java_finally_on_new_line = false
|
||||
ij_java_for_brace_force = never
|
||||
ij_java_for_statement_new_line_after_left_paren = false
|
||||
ij_java_for_statement_right_paren_on_new_line = false
|
||||
ij_java_for_statement_wrap = off
|
||||
ij_java_generate_final_locals = false
|
||||
ij_java_generate_final_parameters = false
|
||||
ij_java_generate_use_type_annotation_before_type = true
|
||||
ij_java_if_brace_force = never
|
||||
ij_java_imports_layout = @*, *, |, javax.**, java.**, |, $*
|
||||
ij_java_indent_case_from_switch = true
|
||||
ij_java_insert_inner_class_imports = false
|
||||
ij_java_insert_override_annotation = true
|
||||
ij_java_keep_blank_lines_before_right_brace = 2
|
||||
ij_java_keep_blank_lines_between_package_declaration_and_header = 2
|
||||
ij_java_keep_blank_lines_in_code = 2
|
||||
ij_java_keep_blank_lines_in_declarations = 2
|
||||
ij_java_keep_builder_methods_indents = false
|
||||
ij_java_keep_control_statement_in_one_line = true
|
||||
ij_java_keep_first_column_comment = true
|
||||
ij_java_keep_indents_on_empty_lines = false
|
||||
ij_java_keep_line_breaks = true
|
||||
ij_java_keep_multiple_expressions_in_one_line = false
|
||||
ij_java_keep_simple_blocks_in_one_line = false
|
||||
ij_java_keep_simple_classes_in_one_line = false
|
||||
ij_java_keep_simple_lambdas_in_one_line = false
|
||||
ij_java_keep_simple_methods_in_one_line = false
|
||||
ij_java_label_indent_absolute = false
|
||||
ij_java_label_indent_size = 0
|
||||
ij_java_lambda_brace_style = end_of_line
|
||||
ij_java_layout_on_demand_import_from_same_package_first = true
|
||||
ij_java_layout_static_imports_separately = true
|
||||
ij_java_line_comment_add_space = false
|
||||
ij_java_line_comment_add_space_on_reformat = false
|
||||
ij_java_line_comment_at_first_column = true
|
||||
ij_java_listener_class_prefix =
|
||||
ij_java_listener_class_suffix =
|
||||
ij_java_local_variable_name_prefix =
|
||||
ij_java_local_variable_name_suffix =
|
||||
ij_java_message_dd_prefix =
|
||||
ij_java_message_dd_suffix = EJB
|
||||
ij_java_message_eb_prefix =
|
||||
ij_java_message_eb_suffix = Bean
|
||||
ij_java_method_annotation_wrap = split_into_lines
|
||||
ij_java_method_brace_style = end_of_line
|
||||
ij_java_method_call_chain_wrap = off
|
||||
ij_java_method_parameters_new_line_after_left_paren = false
|
||||
ij_java_method_parameters_right_paren_on_new_line = false
|
||||
ij_java_method_parameters_wrap = off
|
||||
ij_java_modifier_list_wrap = false
|
||||
ij_java_multi_catch_types_wrap = normal
|
||||
ij_java_names_count_to_use_import_on_demand = 3
|
||||
ij_java_new_line_after_lparen_in_annotation = false
|
||||
ij_java_new_line_after_lparen_in_deconstruction_pattern = true
|
||||
ij_java_new_line_after_lparen_in_record_header = false
|
||||
ij_java_new_line_when_body_is_presented = false
|
||||
ij_java_packages_to_use_import_on_demand = java.awt.*, javax.swing.*
|
||||
ij_java_parameter_annotation_wrap = off
|
||||
ij_java_parameter_name_prefix =
|
||||
ij_java_parameter_name_suffix =
|
||||
ij_java_parentheses_expression_new_line_after_left_paren = false
|
||||
ij_java_parentheses_expression_right_paren_on_new_line = false
|
||||
ij_java_place_assignment_sign_on_next_line = false
|
||||
ij_java_prefer_longer_names = true
|
||||
ij_java_prefer_parameters_wrap = false
|
||||
ij_java_preserve_module_imports = true
|
||||
ij_java_record_components_wrap = normal
|
||||
ij_java_repeat_annotations =
|
||||
ij_java_repeat_synchronized = true
|
||||
ij_java_replace_instanceof_and_cast = false
|
||||
ij_java_replace_null_check = true
|
||||
ij_java_replace_sum_lambda_with_method_ref = true
|
||||
ij_java_resource_list_new_line_after_left_paren = false
|
||||
ij_java_resource_list_right_paren_on_new_line = false
|
||||
ij_java_resource_list_wrap = off
|
||||
ij_java_rparen_on_new_line_in_annotation = false
|
||||
ij_java_rparen_on_new_line_in_deconstruction_pattern = true
|
||||
ij_java_rparen_on_new_line_in_record_header = false
|
||||
ij_java_servlet_class_prefix =
|
||||
ij_java_servlet_class_suffix =
|
||||
ij_java_servlet_dd_prefix =
|
||||
ij_java_servlet_dd_suffix =
|
||||
ij_java_session_dd_prefix =
|
||||
ij_java_session_dd_suffix = EJB
|
||||
ij_java_session_eb_prefix =
|
||||
ij_java_session_eb_suffix = Bean
|
||||
ij_java_session_hi_prefix =
|
||||
ij_java_session_hi_suffix = Home
|
||||
ij_java_session_lhi_prefix = Local
|
||||
ij_java_session_lhi_suffix = Home
|
||||
ij_java_session_li_prefix = Local
|
||||
ij_java_session_li_suffix =
|
||||
ij_java_session_ri_prefix =
|
||||
ij_java_session_ri_suffix =
|
||||
ij_java_session_si_prefix =
|
||||
ij_java_session_si_suffix = Service
|
||||
ij_java_space_after_closing_angle_bracket_in_type_argument = false
|
||||
ij_java_space_after_colon = true
|
||||
ij_java_space_after_comma = true
|
||||
ij_java_space_after_comma_in_type_arguments = true
|
||||
ij_java_space_after_for_semicolon = true
|
||||
ij_java_space_after_quest = true
|
||||
ij_java_space_after_type_cast = true
|
||||
ij_java_space_before_annotation_array_initializer_left_brace = false
|
||||
ij_java_space_before_annotation_parameter_list = false
|
||||
ij_java_space_before_array_initializer_left_brace = false
|
||||
ij_java_space_before_catch_keyword = true
|
||||
ij_java_space_before_catch_left_brace = true
|
||||
ij_java_space_before_catch_parentheses = true
|
||||
ij_java_space_before_class_left_brace = true
|
||||
ij_java_space_before_colon = true
|
||||
ij_java_space_before_colon_in_foreach = true
|
||||
ij_java_space_before_comma = false
|
||||
ij_java_space_before_deconstruction_list = false
|
||||
ij_java_space_before_do_left_brace = true
|
||||
ij_java_space_before_else_keyword = true
|
||||
ij_java_space_before_else_left_brace = true
|
||||
ij_java_space_before_finally_keyword = true
|
||||
ij_java_space_before_finally_left_brace = true
|
||||
ij_java_space_before_for_left_brace = true
|
||||
ij_java_space_before_for_parentheses = true
|
||||
ij_java_space_before_for_semicolon = false
|
||||
ij_java_space_before_if_left_brace = true
|
||||
ij_java_space_before_if_parentheses = true
|
||||
ij_java_space_before_method_call_parentheses = false
|
||||
ij_java_space_before_method_left_brace = true
|
||||
ij_java_space_before_method_parentheses = false
|
||||
ij_java_space_before_opening_angle_bracket_in_type_parameter = false
|
||||
ij_java_space_before_quest = true
|
||||
ij_java_space_before_switch_left_brace = true
|
||||
ij_java_space_before_switch_parentheses = true
|
||||
ij_java_space_before_synchronized_left_brace = true
|
||||
ij_java_space_before_synchronized_parentheses = true
|
||||
ij_java_space_before_try_left_brace = true
|
||||
ij_java_space_before_try_parentheses = true
|
||||
ij_java_space_before_type_parameter_list = false
|
||||
ij_java_space_before_while_keyword = true
|
||||
ij_java_space_before_while_left_brace = true
|
||||
ij_java_space_before_while_parentheses = true
|
||||
ij_java_space_inside_one_line_enum_braces = false
|
||||
ij_java_space_within_empty_array_initializer_braces = false
|
||||
ij_java_space_within_empty_method_call_parentheses = false
|
||||
ij_java_space_within_empty_method_parentheses = false
|
||||
ij_java_spaces_around_additive_operators = true
|
||||
ij_java_spaces_around_annotation_eq = true
|
||||
ij_java_spaces_around_assignment_operators = true
|
||||
ij_java_spaces_around_bitwise_operators = true
|
||||
ij_java_spaces_around_equality_operators = true
|
||||
ij_java_spaces_around_lambda_arrow = true
|
||||
ij_java_spaces_around_logical_operators = true
|
||||
ij_java_spaces_around_method_ref_dbl_colon = false
|
||||
ij_java_spaces_around_multiplicative_operators = true
|
||||
ij_java_spaces_around_relational_operators = true
|
||||
ij_java_spaces_around_shift_operators = true
|
||||
ij_java_spaces_around_type_bounds_in_type_parameters = true
|
||||
ij_java_spaces_around_unary_operator = false
|
||||
ij_java_spaces_inside_block_braces_when_body_is_present = false
|
||||
ij_java_spaces_within_angle_brackets = false
|
||||
ij_java_spaces_within_annotation_parentheses = false
|
||||
ij_java_spaces_within_array_initializer_braces = false
|
||||
ij_java_spaces_within_braces = false
|
||||
ij_java_spaces_within_brackets = false
|
||||
ij_java_spaces_within_cast_parentheses = false
|
||||
ij_java_spaces_within_catch_parentheses = false
|
||||
ij_java_spaces_within_deconstruction_list = false
|
||||
ij_java_spaces_within_for_parentheses = false
|
||||
ij_java_spaces_within_if_parentheses = false
|
||||
ij_java_spaces_within_method_call_parentheses = false
|
||||
ij_java_spaces_within_method_parentheses = false
|
||||
ij_java_spaces_within_parentheses = false
|
||||
ij_java_spaces_within_record_header = false
|
||||
ij_java_spaces_within_switch_parentheses = false
|
||||
ij_java_spaces_within_synchronized_parentheses = false
|
||||
ij_java_spaces_within_try_parentheses = false
|
||||
ij_java_spaces_within_while_parentheses = false
|
||||
ij_java_special_else_if_treatment = true
|
||||
ij_java_static_field_name_prefix =
|
||||
ij_java_static_field_name_suffix =
|
||||
ij_java_subclass_name_prefix =
|
||||
ij_java_subclass_name_suffix = Impl
|
||||
ij_java_switch_expressions_wrap = normal
|
||||
ij_java_ternary_operation_signs_on_next_line = false
|
||||
ij_java_ternary_operation_wrap = off
|
||||
ij_java_test_name_prefix =
|
||||
ij_java_test_name_suffix = Test
|
||||
ij_java_throws_keyword_wrap = off
|
||||
ij_java_throws_list_wrap = off
|
||||
ij_java_use_external_annotations = false
|
||||
ij_java_use_fq_class_names = false
|
||||
ij_java_use_relative_indents = false
|
||||
ij_java_use_single_class_imports = true
|
||||
ij_java_variable_annotation_wrap = off
|
||||
ij_java_visibility = public
|
||||
ij_java_while_brace_force = never
|
||||
ij_java_while_on_new_line = false
|
||||
ij_java_wrap_comments = false
|
||||
ij_java_wrap_first_method_in_call_chain = false
|
||||
ij_java_wrap_long_lines = false
|
||||
ij_java_wrap_semicolon_after_call_chain = false
|
||||
|
||||
[*.xml]
|
||||
indent_style = space
|
||||
indent_size = 4
|
||||
tab_width = 4
|
||||
max_line_length = 120
|
||||
|
||||
[*.json]
|
||||
indent_style = space
|
||||
indent_size = 2
|
||||
tab_width = 2
|
||||
max_line_length = 120
|
||||
|
||||
[*.{yml,yaml}]
|
||||
indent_style = space
|
||||
indent_size = 2
|
||||
tab_width = 2
|
||||
max_line_length = 120
|
||||
|
||||
[*.md]
|
||||
max_line_length = 0
|
||||
trim_trailing_whitespace = false
|
||||
@@ -1,37 +1,70 @@
|
||||
---
|
||||
name: 问题提交
|
||||
about: 描述问题并提交,帮助我们对其进行检查与修复。
|
||||
name:
|
||||
问题提交
|
||||
about:
|
||||
描述问题并提交,帮助我们对其进行检查与修复。
|
||||
title: ''
|
||||
labels: bug
|
||||
labels:
|
||||
bug
|
||||
assignees: ''
|
||||
|
||||
---
|
||||
|
||||
### **问题简述**
|
||||
###
|
||||
*
|
||||
*问题简述
|
||||
**
|
||||
|
||||
用简短的话语描述一下大概问题。
|
||||
|
||||
### **问题来源**
|
||||
###
|
||||
*
|
||||
*问题来源
|
||||
**
|
||||
|
||||
描述一下通过哪些操作才发现的问题,如:
|
||||
|
||||
1. 使用了 '...'
|
||||
2. 输入了 '....'
|
||||
3. 出现了报错 '....'
|
||||
1.
|
||||
使用了 '...'
|
||||
2.
|
||||
输入了 '....'
|
||||
3.
|
||||
出现了报错 '....'
|
||||
|
||||
### **预期结果** (可选)
|
||||
###
|
||||
*
|
||||
*预期结果
|
||||
** (可选)
|
||||
|
||||
如果问题不发生,应该是什么情况
|
||||
|
||||
### **问题截图/问题报错**
|
||||
###
|
||||
*
|
||||
*问题截图/问题报错
|
||||
**
|
||||
|
||||
如果有报错或输出,请提供截图。
|
||||
|
||||
### **操作环境**
|
||||
###
|
||||
*
|
||||
*操作环境
|
||||
**
|
||||
|
||||
- 系统环境: `Windows 10` / `Ubuntu` / `...`
|
||||
- Java版本: `JDK11` / `OPENJDK8` / `JRE8` / `...`
|
||||
-
|
||||
系统环境:
|
||||
`Windows 10` /
|
||||
`Ubuntu` /
|
||||
`...`
|
||||
-
|
||||
Java版本:
|
||||
`JDK11` /
|
||||
`OPENJDK8` /
|
||||
`JRE8` /
|
||||
`...`
|
||||
|
||||
### **其他补充**
|
||||
###
|
||||
*
|
||||
*其他补充
|
||||
**
|
||||
|
||||
如有其他补充,可以在这里描述。
|
||||
|
||||
@@ -1,23 +1,38 @@
|
||||
---
|
||||
name: 功能需求
|
||||
about: 希望我们提供更多的功能。
|
||||
name:
|
||||
功能需求
|
||||
about:
|
||||
希望我们提供更多的功能。
|
||||
title: ''
|
||||
labels: enhancement
|
||||
labels:
|
||||
enhancement
|
||||
assignees: ''
|
||||
---
|
||||
|
||||
### **功能简述**
|
||||
###
|
||||
*
|
||||
*功能简述
|
||||
**
|
||||
|
||||
简单的描述一下你想要的功能
|
||||
|
||||
### **需求来源**
|
||||
###
|
||||
*
|
||||
*需求来源
|
||||
**
|
||||
|
||||
简单的描述一下为什么需要这个功能。
|
||||
|
||||
### **功能参考**(可选)
|
||||
###
|
||||
*
|
||||
*功能参考
|
||||
**(可选)
|
||||
|
||||
如果有相关功能的参考,如文本、截图,请提供给我们。
|
||||
|
||||
### **附加内容**
|
||||
###
|
||||
*
|
||||
*附加内容
|
||||
**
|
||||
|
||||
如果有什么小细节需要重点注意,请在这里告诉我们。
|
||||
|
||||
@@ -8,46 +8,167 @@
|
||||

|
||||

|
||||
|
||||
README LANGUAGES [ [**English**](README.md) | [中文](README_CN.md) ]
|
||||
README
|
||||
LANGUAGES [ [
|
||||
*
|
||||
*English
|
||||
**](README.md) | [中文](README_CN.md) ]
|
||||
</div>
|
||||
|
||||
# configured _(config framework)_
|
||||
# configured
|
||||
_(
|
||||
config
|
||||
framework)_
|
||||
|
||||
<img src=".doc/images/logo-bg.svg" width="150px" alt="logo" align="right" style="float: right"/>
|
||||
|
||||
_**"Once set, Simple get."**_
|
||||
_
|
||||
*
|
||||
*"
|
||||
Once
|
||||
set,
|
||||
Simple
|
||||
get."
|
||||
**_
|
||||
|
||||
A simple, easy-to-use and universal solution for managing, loading, reading,
|
||||
and updating configuration files.
|
||||
A
|
||||
simple,
|
||||
easy-to-use
|
||||
and
|
||||
universal
|
||||
solution
|
||||
for
|
||||
managing,
|
||||
loading,
|
||||
reading,
|
||||
and
|
||||
updating
|
||||
configuration
|
||||
files.
|
||||
|
||||
Supported **JSON**, **YAML**, **Hocon**, **TOML**, **SQL**, **MongoDB**... and much more!
|
||||
Supported
|
||||
*
|
||||
*JSON
|
||||
**,
|
||||
*
|
||||
*YAML
|
||||
**,
|
||||
*
|
||||
*Hocon
|
||||
**,
|
||||
*
|
||||
*TOML
|
||||
**,
|
||||
*
|
||||
*SQL
|
||||
**,
|
||||
*
|
||||
*MongoDB
|
||||
**...
|
||||
and
|
||||
much
|
||||
more!
|
||||
|
||||
## Features & Advantages
|
||||
|
||||
Supported [YAML](impl/yaml), [JSON](impl/json), [HOCON](impl/hocon) and [SQL](impl/sql) based configuration files
|
||||
Supported [YAML](providers/yaml), [JSON](providers/json), [HOCON](providers/hocon)
|
||||
and [SQL](providers/sql)
|
||||
based
|
||||
configuration
|
||||
files
|
||||
format.
|
||||
|
||||
- Class-based mechanism for initializing, loading, retrieving, and updating configuration files, ensuring convenience
|
||||
and efficiency.
|
||||
- Supports manual serialization and deserialization of complex configurations.
|
||||
- Offers multiple builder forms for rapid construction of `ConfigValue<?>` objects.
|
||||
- Enables specification of configuration paths, comments, and more via annotations.
|
||||
-
|
||||
Class-based
|
||||
mechanism
|
||||
for
|
||||
initializing,
|
||||
loading,
|
||||
retrieving,
|
||||
and
|
||||
updating
|
||||
configuration
|
||||
files,
|
||||
ensuring
|
||||
convenience
|
||||
and
|
||||
efficiency.
|
||||
-
|
||||
Supports
|
||||
manual
|
||||
serialization
|
||||
and
|
||||
deserialization
|
||||
of
|
||||
complex
|
||||
configurations.
|
||||
-
|
||||
Offers
|
||||
multiple
|
||||
builder
|
||||
forms
|
||||
for
|
||||
rapid
|
||||
construction
|
||||
of
|
||||
`ConfigValue<?>`
|
||||
objects.
|
||||
-
|
||||
Enables
|
||||
specification
|
||||
of
|
||||
configuration
|
||||
paths,
|
||||
comments,
|
||||
and
|
||||
more
|
||||
via
|
||||
annotations.
|
||||
|
||||
## Development
|
||||
|
||||
For the latest JavaDoc release, [CLICK HERE](https://CarmJos.github.io/configured).
|
||||
For
|
||||
the
|
||||
latest
|
||||
JavaDoc
|
||||
release, [CLICK HERE](https://CarmJos.github.io/configured).
|
||||
|
||||
For a detailed development guide, [CLICK HERE](.doc/README.md).
|
||||
For
|
||||
a
|
||||
detailed
|
||||
development
|
||||
guide, [CLICK HERE](.doc/README.md).
|
||||
|
||||
### Preview
|
||||
|
||||
To quickly demonstrate the applicability of the project, here are a few practical demonstrations:
|
||||
To
|
||||
quickly
|
||||
demonstrate
|
||||
the
|
||||
applicability
|
||||
of
|
||||
the
|
||||
project,
|
||||
here
|
||||
are
|
||||
a
|
||||
few
|
||||
practical
|
||||
demonstrations:
|
||||
|
||||
- [Database configuration.](demo/src/main/java/cc/carm/lib/configuration/demo/DatabaseConfiguration.java)
|
||||
- [Demonstration of all types of configuration instance classes.](demo/src/main/java/cc/carm/lib/configuration/demo/tests/conf/DemoConfiguration.java)
|
||||
- [Demonstration of configuration instance classes.](demo/src/main/java/cc/carm/lib/configuration/demo/tests/conf/DemoConfiguration.java)
|
||||
|
||||
Check out all code demonstrations [HERE](demo/src/main/java/cc/carm/lib/configuration/demo/DatabaseConfiguration.java).
|
||||
For more examples, see the [Development Guide](.doc/README.md).
|
||||
Check
|
||||
out
|
||||
all
|
||||
code
|
||||
demonstrations [HERE](demo/src/main/java/cc/carm/lib/configuration/demo/DatabaseConfiguration.java).
|
||||
For
|
||||
more
|
||||
examples,
|
||||
see
|
||||
the [Development Guide](.doc/README.md).
|
||||
|
||||
```java
|
||||
|
||||
@@ -240,30 +361,104 @@ dependencies {
|
||||
|
||||
## Derived Projects
|
||||
|
||||
### [**MineConfiguration**](https://github.com/CarmJos/MineConfiguration) (by @CarmJos)
|
||||
### [
|
||||
*
|
||||
*MineConfiguration
|
||||
**](https://github.com/CarmJos/MineConfiguration) (by @CarmJos)
|
||||
|
||||
configured for MineCraft!
|
||||
Easily manage configurations on MineCraft-related server platforms.
|
||||
configured
|
||||
for
|
||||
MineCraft!
|
||||
Easily
|
||||
manage
|
||||
configurations
|
||||
on
|
||||
MineCraft-related
|
||||
server
|
||||
platforms.
|
||||
|
||||
Currently, it supports BungeeCord, Velocity, Bukkit (Spigot) servers,
|
||||
with more platforms to be supported soon.
|
||||
Currently,
|
||||
it
|
||||
supports
|
||||
BungeeCord,
|
||||
Velocity,
|
||||
Bukkit (
|
||||
Spigot)
|
||||
servers,
|
||||
with
|
||||
more
|
||||
platforms
|
||||
to
|
||||
be
|
||||
supported
|
||||
soon.
|
||||
|
||||
## Support and Donation
|
||||
|
||||
If you appreciate this plugin, consider supporting me with a donation!
|
||||
If
|
||||
you
|
||||
appreciate
|
||||
this
|
||||
plugin,
|
||||
consider
|
||||
supporting
|
||||
me
|
||||
with
|
||||
a
|
||||
donation!
|
||||
|
||||
Thank you for supporting open-source projects!
|
||||
Thank
|
||||
you
|
||||
for
|
||||
supporting
|
||||
open-source
|
||||
projects!
|
||||
|
||||
Many thanks to Jetbrains for kindly providing a license for us to work on this and other open-source projects.
|
||||
Many
|
||||
thanks
|
||||
to
|
||||
Jetbrains
|
||||
for
|
||||
kindly
|
||||
providing
|
||||
a
|
||||
license
|
||||
for
|
||||
us
|
||||
to
|
||||
work
|
||||
on
|
||||
this
|
||||
and
|
||||
other
|
||||
open-source
|
||||
projects.
|
||||
|
||||
[](https://www.jetbrains.com/?from=https://github.com/CarmJos/configured)
|
||||
|
||||
Many thanks to [ArtformGames](https://github.com/ArtformGames) for their
|
||||
strong support and active contribution to this project!
|
||||
Many
|
||||
thanks
|
||||
to [ArtformGames](https://github.com/ArtformGames)
|
||||
for
|
||||
their
|
||||
strong
|
||||
support
|
||||
and
|
||||
active
|
||||
contribution
|
||||
to
|
||||
this
|
||||
project!
|
||||
|
||||
<img src="https://raw.githubusercontent.com/ArtformGames/.github/master/logo/logo_full.svg" width="317px" height="117px" alt="ArtformGames">
|
||||
|
||||
## Open Source License
|
||||
|
||||
This project's source code is licensed under
|
||||
This
|
||||
project's
|
||||
source
|
||||
code
|
||||
is
|
||||
licensed
|
||||
under
|
||||
the [GNU LESSER GENERAL PUBLIC LICENSE](https://www.gnu.org/licenses/lgpl-3.0.html).
|
||||
|
||||
+51
-16
@@ -8,30 +8,48 @@
|
||||

|
||||

|
||||
|
||||
README LANGUAGES [ [English](README.md) | [**中文**](README_CN.md) ]
|
||||
README
|
||||
LANGUAGES [ [English](README.md) | [
|
||||
*
|
||||
*中文
|
||||
**](README_CN.md) ]
|
||||
|
||||
</div>
|
||||
|
||||
# configured _(配置文件框架)_
|
||||
# configured
|
||||
_(
|
||||
配置文件框架)_
|
||||
|
||||
<img src=".doc/images/logo-bg.svg" width="150px" alt="logo" align="right" style="float: right"/>
|
||||
|
||||
**一次配置,轻松读取!**
|
||||
*
|
||||
*一次配置,轻松读取!
|
||||
**
|
||||
|
||||
一款简单便捷的通用配置文件加载、读取与更新工具,可自定义配置的格式。
|
||||
|
||||
## 特性 & 优势
|
||||
|
||||
支持 [YAML](providers/yaml), [JSON](providers/gson), [HOCON](providers/hocon) 和 [SQL](providers/sql) 等多种配置文件格式。
|
||||
支持 [YAML](providers/yaml), [JSON](providers/gson), [HOCON](providers/hocon)
|
||||
和 [SQL](providers/sql)
|
||||
等多种配置文件格式。
|
||||
|
||||
- 基于类的配置文件初始化、加载、获取与更新机制,方便快捷。
|
||||
- 支持复杂配置的手动序列化、反序列化。
|
||||
- 提供多种builder形式,快速构建 `ConfigValue<?>` 对象。
|
||||
- 支持通过注解规定配置对应的路径、注释等信息。
|
||||
-
|
||||
基于类的配置文件初始化、加载、获取与更新机制,方便快捷。
|
||||
-
|
||||
支持复杂配置的手动序列化、反序列化。
|
||||
-
|
||||
提供多种builder形式,快速构建
|
||||
`ConfigValue<?>`
|
||||
对象。
|
||||
-
|
||||
支持通过注解规定配置对应的路径、注释等信息。
|
||||
|
||||
## 开发
|
||||
|
||||
详细开发介绍请 [点击这里](.doc/README.md) , JavaDoc(最新Release)
|
||||
详细开发介绍请 [点击这里](.doc/README.md) ,
|
||||
JavaDoc(
|
||||
最新Release)
|
||||
请 [点击这里](https://CarmJos.github.io/configured) 。
|
||||
|
||||
### 示例代码
|
||||
@@ -260,12 +278,25 @@ dependencies {
|
||||
|
||||
## 衍生项目
|
||||
|
||||
### [**MineConfiguration**](https://github.com/CarmJos/MineConfiguration) (by @CarmJos )
|
||||
### [
|
||||
*
|
||||
*MineConfiguration
|
||||
**](https://github.com/CarmJos/MineConfiguration) (by @CarmJos )
|
||||
|
||||
configured for MineCraft!
|
||||
开始在 MineCraft 相关服务器平台上轻松(做)配置吧!
|
||||
configured
|
||||
for
|
||||
MineCraft!
|
||||
开始在
|
||||
MineCraft
|
||||
相关服务器平台上轻松(
|
||||
做)
|
||||
配置吧!
|
||||
|
||||
目前支持 BungeeCord, Bukkit(Spigot) 服务端,后续将支持更多平台。
|
||||
目前支持
|
||||
BungeeCord,
|
||||
Bukkit(
|
||||
Spigot)
|
||||
服务端,后续将支持更多平台。
|
||||
|
||||
## 支持与捐赠
|
||||
|
||||
@@ -273,14 +304,18 @@ configured for MineCraft!
|
||||
|
||||
感谢您对开源项目的支持!
|
||||
|
||||
万分感谢 Jetbrains 为我们提供了从事此项目和其他开源项目的许可!
|
||||
万分感谢
|
||||
Jetbrains
|
||||
为我们提供了从事此项目和其他开源项目的许可!
|
||||
|
||||
[](https://www.jetbrains.com/?from=https://github.com/CarmJos/configured)
|
||||
|
||||
万分感谢来自 [ArtformGames](https://github.com/ArtformGames) 对本项目的大力支持与积极贡献!
|
||||
万分感谢来自 [ArtformGames](https://github.com/ArtformGames)
|
||||
对本项目的大力支持与积极贡献!
|
||||
|
||||
<img src="https://raw.githubusercontent.com/ArtformGames/.github/master/logo/logo_full.svg" width="317px" height="117px" alt="ArtformGames">
|
||||
|
||||
## 开源协议
|
||||
|
||||
本项目源码采用 [GNU LESSER GENERAL PUBLIC LICENSE](https://www.gnu.org/licenses/lgpl-3.0.html) 开源协议。
|
||||
本项目源码采用 [GNU LESSER GENERAL PUBLIC LICENSE](https://www.gnu.org/licenses/lgpl-3.0.html)
|
||||
开源协议。
|
||||
|
||||
@@ -4,4 +4,5 @@ package cc.carm.lib.configuration;
|
||||
* The root interface of the configuration file interfaces,
|
||||
* which is used to label a class as a configuration.
|
||||
*/
|
||||
public interface Configuration { }
|
||||
public interface Configuration {
|
||||
}
|
||||
|
||||
@@ -4,7 +4,6 @@ import cc.carm.lib.configuration.Configuration
|
||||
import cc.carm.lib.configuration.annotation.ConfigPath
|
||||
import cc.carm.lib.configuration.annotation.ConfigVersion
|
||||
import cc.carm.lib.configuration.kotlin.value.*
|
||||
import java.util.*
|
||||
|
||||
@ConfigPath(root = true)
|
||||
object KotlinConfiguration : Configuration {
|
||||
|
||||
-2
@@ -1,7 +1,5 @@
|
||||
package cc.carm.lib.configuration.source.option;
|
||||
|
||||
import cc.carm.lib.configuration.source.option.ConfigurationOption;
|
||||
|
||||
import java.nio.charset.Charset;
|
||||
import java.nio.charset.StandardCharsets;
|
||||
|
||||
|
||||
-1
@@ -1,6 +1,5 @@
|
||||
package cc.carm.lib.configuration.value.text.function;
|
||||
|
||||
import cc.carm.lib.configuration.value.text.data.TextContents;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
import java.util.Arrays;
|
||||
|
||||
@@ -1,8 +1,24 @@
|
||||
# configured-JSON
|
||||
|
||||
JSON file-based implementation, compatible with all Java environments.
|
||||
JSON
|
||||
file-based
|
||||
implementation,
|
||||
compatible
|
||||
with
|
||||
all
|
||||
Java
|
||||
environments.
|
||||
|
||||
**Remember that JSON does not support file comments.**
|
||||
*
|
||||
*Remember
|
||||
that
|
||||
JSON
|
||||
does
|
||||
not
|
||||
support
|
||||
file
|
||||
comments.
|
||||
**
|
||||
|
||||
## Dependencies
|
||||
|
||||
|
||||
@@ -1,6 +1,13 @@
|
||||
# configured-HOCON
|
||||
|
||||
HOCON file-based implementation, compatible with all Java environments.
|
||||
HOCON
|
||||
file-based
|
||||
implementation,
|
||||
compatible
|
||||
with
|
||||
all
|
||||
Java
|
||||
environments.
|
||||
|
||||
## Dependencies
|
||||
|
||||
|
||||
+4
-1
@@ -9,7 +9,10 @@ import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
import java.io.File;
|
||||
import java.util.*;
|
||||
import java.util.Iterator;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Objects;
|
||||
|
||||
public class HOCONSource
|
||||
extends FileConfigSource<SourcedSection, Map<String, Object>, HOCONSource> {
|
||||
|
||||
+46
-13
@@ -1,8 +1,16 @@
|
||||
# configured-SQL
|
||||
|
||||
SQL database implementation, support for MySQL or MariaDB.
|
||||
SQL
|
||||
database
|
||||
implementation,
|
||||
support
|
||||
for
|
||||
MySQL
|
||||
or
|
||||
MariaDB.
|
||||
|
||||
## Table schema
|
||||
|
||||
```mysql
|
||||
CREATE TABLE IF NOT EXISTS conf
|
||||
(
|
||||
@@ -16,8 +24,10 @@ CREATE TABLE IF NOT EXISTS conf
|
||||
`version` MEDIUMINT UNSIGNED NOT NULL DEFAULT 0, # 配置项的版本
|
||||
`create_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, # 创建时间
|
||||
`update_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
PRIMARY KEY (`namespace`, `path`)
|
||||
) ENGINE = InnoDB
|
||||
PRIMARY KEY (`namespace`,
|
||||
`path`)
|
||||
)
|
||||
ENGINE = InnoDB
|
||||
DEFAULT CHARSET = utf8mb4;
|
||||
```
|
||||
|
||||
@@ -32,16 +42,30 @@ CREATE TABLE IF NOT EXISTS conf
|
||||
|
||||
<repository>
|
||||
<!-- Using Maven Central Repository for secure and stable updates, though synchronization might be needed. -->
|
||||
<id>maven</id>
|
||||
<name>Maven Central</name>
|
||||
<url>https://repo1.maven.org/maven2</url>
|
||||
<id>
|
||||
maven
|
||||
</id>
|
||||
<name>
|
||||
Maven
|
||||
Central
|
||||
</name>
|
||||
<url>
|
||||
https://repo1.maven.org/maven2
|
||||
</url>
|
||||
</repository>
|
||||
|
||||
<repository>
|
||||
<!-- Using GitHub dependencies for real-time updates, configuration required (recommended). -->
|
||||
<id>configured</id>
|
||||
<name>GitHub Packages</name>
|
||||
<url>https://maven.pkg.github.com/CarmJos/configured</url>
|
||||
<id>
|
||||
configured
|
||||
</id>
|
||||
<name>
|
||||
GitHub
|
||||
Packages
|
||||
</name>
|
||||
<url>
|
||||
https://maven.pkg.github.com/CarmJos/configured
|
||||
</url>
|
||||
</repository>
|
||||
|
||||
</repositories>
|
||||
@@ -53,10 +77,19 @@ CREATE TABLE IF NOT EXISTS conf
|
||||
<project>
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>cc.carm.lib</groupId>
|
||||
<artifactId>configured-sql</artifactId>
|
||||
<version>[LATEST RELEASE]</version>
|
||||
<scope>compile</scope>
|
||||
<groupId>
|
||||
cc.carm.lib
|
||||
</groupId>
|
||||
<artifactId>
|
||||
configured-sql
|
||||
</artifactId>
|
||||
<version>
|
||||
[LATEST
|
||||
RELEASE]
|
||||
</version>
|
||||
<scope>
|
||||
compile
|
||||
</scope>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
</project>
|
||||
|
||||
@@ -1,6 +1,13 @@
|
||||
# configured-YAML
|
||||
|
||||
YAML file-based implementation, compatible with all Java environments.
|
||||
YAML
|
||||
file-based
|
||||
implementation,
|
||||
compatible
|
||||
with
|
||||
all
|
||||
Java
|
||||
environments.
|
||||
|
||||
## Dependencies
|
||||
|
||||
|
||||
Reference in New Issue
Block a user