Package org.pentaho.di.core.database

Examples of org.pentaho.di.core.database.DatabaseInterface


         this.meta.getAttributes().put(GenericDatabaseMeta.ATRRIBUTE_CUSTOM_URL, jdbcDef.getConnectionString());
         this.meta.getAttributes().put(GenericDatabaseMeta.ATRRIBUTE_CUSTOM_DRIVER_CLASS, jdbcDef.getDriverClass());
      }
      else
      {
        final DatabaseInterface databaseInterface = DatabaseMapping.getMappingForDriver(jdbcDef.getDriverClass());
        this.meta.setDatabaseType(databaseInterface.getPluginId());
        log.debug("Database type is unknown, using " + databaseInterface);
        try
        {
          final String pattern;
          if (databaseInterface instanceof HypersonicDatabaseMeta)
          {
            final String connectionString = jdbcDef.getConnectionString();
            if (connectionString.startsWith(HSQLDB_PREFIX))
            {
              if (connectionString.indexOf(':', HSQLDB_PREFIX.length()) == -1)
              {
                pattern = HSQLDB_PREFIX + "{0}/{2}";
              }
              else
              {
                pattern = HSQLDB_PREFIX + "{0}:{1}/{2}";
              }
            }
            else
            {
              pattern = databaseInterface.getURL("{0}", "{1}", "{2}");
            }
          }
          else
          {
            pattern = databaseInterface.getURL("{0}", "{1}", "{2}");
          }
          // knowing that most databases are written in C, we can be sure that the zero-character
          // is not a common value.
          if (pattern != null && pattern.length() > 0)
          {
View Full Code Here


    final String mappedInstance = configuration.getConfigProperty
        ("org.pentaho.reporting.ui.datasources.jdbc.driver-mapping." + driverClass);
    final DatabaseInterface[] interfaces = DatabaseMeta.getDatabaseInterfaces();
    for (int i = 0; i < interfaces.length; i++)
    {
      final DatabaseInterface databaseInterface = interfaces[i];
      if (databaseInterface.getClass().getName().equals(mappedInstance))
      {
        return databaseInterface;
      }
    }
    return mapTypeFromDriver(driverClass);
View Full Code Here

    // of kettle. There is no safe way (since numeric ids are deprecated) to actually reference a database
    // meta object without hardcoding its ID.
    final DatabaseInterface[] interfaces = DatabaseMeta.getDatabaseInterfaces();
    for (int i = 0; i < interfaces.length; i++)
    {
      final DatabaseInterface anInterface = interfaces[i];
      if ("GENERIC".equals(anInterface.getPluginId()))
      {
        return anInterface;
      }
    }
    return null;
View Full Code Here

    }

    final DatabaseInterface[] interfaces = DatabaseMeta.getDatabaseInterfaces();
    for (int i = 0; i < interfaces.length; i++)
    {
      final DatabaseInterface dbi = interfaces[i];
      final int[] accessTypeList = dbi.getAccessTypeList();
      for (int j = 0; j < accessTypeList.length; j++)
      {
        final int al = accessTypeList[j];
        if (al != DatabaseMeta.TYPE_ACCESS_ODBC)
        {
          dbi.setAccessType(al);
          if (driverClass.equals(dbi.getDriverClass()))
          {
            return dbi;
          }
        }
      }
View Full Code Here

    // for generating the MQL Query.
    SQLConnection tempConnection = getConnection( databaseMeta );
    try {

      // if the connection type is not of the current dialect, regenerate the query
      DatabaseInterface di = getDatabaseInterface( tempConnection );

      if ( ( di != null ) && ( !databaseMeta.getPluginId().equals( di.getPluginId() ) ) ) {
        // we need to reinitialize our mqlQuery object and reset the query.
        // note that using this di object wipes out connection info
        DatabaseMeta meta = (DatabaseMeta) databaseMeta.clone();
        DatabaseInterface di2 = (DatabaseInterface) di.clone();
        di2.setAccessType( databaseMeta.getAccessType() );
        di2.setDatabaseName( databaseMeta.getDatabaseName() );
        di2.setAttributes( databaseMeta.getAttributes() );
        di2.setUsername( databaseMeta.getUsername() );
        di2.setPassword( databaseMeta.getPassword() );
        di2.setHostname( databaseMeta.getHostname() );
        meta.setDatabaseInterface( di2 );
        return meta;
      } else {
        return databaseMeta;
      }
View Full Code Here

  protected DatabaseInterface getDatabaseInterface( final SQLConnection conn ) {
    String prod = null;
    try {
      prod = conn.getNativeConnection().getMetaData().getDatabaseProductName();
      DatabaseInterface di = DatabaseMetaUtil.getDatabaseInterface( prod );
      if ( prod != null && di == null ) {
        logger.warn( Messages.getInstance()
            .getString( "MQLRelationalDataComponent.WARN_0001_NO_DIALECT_DETECTED", prod ) ); //$NON-NLS-1$
      }
      return di;
View Full Code Here

TOP

Related Classes of org.pentaho.di.core.database.DatabaseInterface

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.