[
http://jira.qos.ch/browse/LBCLASSIC-188?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=11637#action_11637
]
Ceki Gulcu commented on LBCLASSIC-188:
--------------------------------------
I just pulled in git://github.com/nurkiewicz/logback.git. Cool. The tests
using hsqldb pass which is nice. However, for other databases the tests are
active on one particular machine called Orion which I currently can't access.
I'll run the integration test later on.
Coming back to the contribution itself, I think it would be preferable to
reduce DBNameResolver to something like:
public interface DBNameResolver {
<E extends Enum<?>> String getTableName(E e);
<E extends Enum<?>> String getColumnName(E e);
}
This way you can still invoke methods using enums (without converting to
string). Moreover, a single enum could work for all column and table names.
WDYT?
> Make table and column names overridable
> ---------------------------------------
>
> Key: LBCLASSIC-188
> URL: http://jira.qos.ch/browse/LBCLASSIC-188
> Project: logback-classic
> Issue Type: Sub-task
> Components: appender
> Affects Versions: 0.9.18
> Reporter: Ceki Gulcu
> Assignee: Logback dev list
>
> To comply with local project rules, it can be helpful if the table and column
> names used by DBAppender could be overridden. The easiest way to solve this
> problem is for DBAppender to delegate the resolution of table names and
> columns to a different class, say DBNameResolver. Here is a possible
> interface:
> interface DBNameResolver {
> String getTableName(String standardTableName);
> String getColumnName(String standardColumnName);
> }
> The default implementation of DBNameResolver could be:
> class DefaulDBNameResolver implements DBNameResolver {
> public String getTableName(String standardTableName) {
> if("logging_event".equals(standardTableName) {
> return standardTableName;
> }
> if("logging_event_property".equals(standardTableName) {
> return standardTableName;
> }
> if("logging_event_exception".equals(standardTableName) {
> return standardTableName;
> }
> throw new IllegalArgumentException(standardTableName + " is an unknown
> table name");
> }
> String getColumnName(String standardColumnName) {
> ...
> }
> }
> If a user wanted to use different names she would simply implement
> DBNameResolver according to her requirements.
> Any volunteers to implement this?
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://jira.qos.ch/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
_______________________________________________
logback-dev mailing list
[email protected]
http://qos.ch/mailman/listinfo/logback-dev