package com.strider.datadefender.database.metadata;

import java.sql.ResultSet;
import java.sql.SQLException;

import java.util.List;
import java.util.Set;

/**
 * Public interface to define the contract for all database-specific
 * metadata classes.
 *
 * @author armenak
 */
public interface IMetaData {
    List<MatchMetaData> getMetaData(String vendor);

    // List<MatchMetaData> getMetaData(final String columnType);
    List<MatchMetaData> getMetaDataForRs(final ResultSet rs) throws SQLException;
}
@@ -1,8 +1,722 @@
+/*%0A * Copyright 2014, Armenak Grigoryan, and individual contributors as indicated%0A * by the @authors tag. See the copyright.txt in the distribution for a%0A * full listing of individual contributors.%0A *%0A * This is free software; you can redistribute it and/or modify it%0A * under the terms of the GNU Lesser General Public License as%0A * published by the Free Software Foundation; either version 2.1 of%0A * the License, or (at your option) any later version.%0A *%0A * This software is distributed in the hope that it will be useful,%0A * but WITHOUT ANY WARRANTY; without even the implied warranty of%0A * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU%0A * Lesser General Public License for more details.%0A */%0A
 package 
@@ -760,16 +760,66 @@
 adata;%0A%0A
+import com.strider.datadefender.DbConfig.Vendor;%0A%0A
 import j
@@ -867,17 +867,16 @@
 eption;%0A
-%0A
 import j
@@ -893,30 +893,8 @@
 ist;
-%0Aimport java.util.Set;
 %0A%0A/*
@@ -1080,87 +1080,21 @@
 ata(
-String vendor);%0A%0A    // List%3CMatchMetaData%3E getMetaData(final String columnType
+Vendor vendor
 );%0A 
@@ -1178,5 +1178,6 @@
 on;%0A
-
 %7D
+%0A

Refactor getMetaData to use DbConfig.Vendor