001 package org.kuali.common.jdbc.vendor.service;
002
003 import java.util.ArrayList;
004 import java.util.Collections;
005 import java.util.List;
006 import java.util.Properties;
007
008 import org.kuali.common.jdbc.sql.model.AdminSql;
009 import org.kuali.common.jdbc.vendor.model.VendorDefault;
010 import org.kuali.common.jdbc.vendor.model.keys.Admin;
011 import org.kuali.common.jdbc.vendor.model.keys.Liquibase;
012 import org.kuali.common.jdbc.vendor.model.keys.Oracle;
013 import org.kuali.common.util.Assert;
014 import org.kuali.common.util.spring.env.EnvironmentService;
015 import org.kuali.common.util.spring.env.model.EnvironmentKeySuffix;
016
017 public class OracleDatabaseVendorService extends DefaultDatabaseVendorService {
018
019 public OracleDatabaseVendorService(EnvironmentService env, VendorDefault vendor) {
020 super(env, vendor);
021 }
022
023 @Override
024 protected String getDbaAfter(String key, AdminSql adminSql, Properties sql) {
025 String defaultValueKey = getVendorDefault().getCode() + "." + Oracle.SCHEMA_STATS.getValue();
026 String defaultValue = sql.getProperty(defaultValueKey);
027 Assert.noBlanks(defaultValue);
028 return getEnv().getString(key, defaultValue);
029 }
030
031 @Override
032 protected List<EnvironmentKeySuffix> getSqlKeySuffixes() {
033 List<EnvironmentKeySuffix> keys = new ArrayList<EnvironmentKeySuffix>();
034 keys.addAll(Admin.asList());
035 keys.addAll(Liquibase.asList());
036 keys.addAll(Oracle.asList());
037 return Collections.unmodifiableList(keys);
038 }
039
040 }