当前位置: 首页>>代码示例>>Java>>正文


Java RepositoryPluginType类代码示例

本文整理汇总了Java中org.pentaho.di.core.plugins.RepositoryPluginType的典型用法代码示例。如果您正苦于以下问题:Java RepositoryPluginType类的具体用法?Java RepositoryPluginType怎么用?Java RepositoryPluginType使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


RepositoryPluginType类属于org.pentaho.di.core.plugins包,在下文中一共展示了RepositoryPluginType类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: openRepository

import org.pentaho.di.core.plugins.RepositoryPluginType; //导入依赖的package包/类
private Repository openRepository(String repositoryName, String user, String pass) throws KettleException {
  
  if (Const.isEmpty(repositoryName)) return null;
  
  RepositoriesMeta repositoriesMeta = new RepositoriesMeta();
  repositoriesMeta.readData();
  RepositoryMeta repositoryMeta = repositoriesMeta.findRepository( repositoryName );
  PluginRegistry registry = PluginRegistry.getInstance();
  Repository repository = registry.loadClass(
         RepositoryPluginType.class,
         repositoryMeta,
         Repository.class
    );
  repository.init(repositoryMeta);
  repository.connect(user, pass);
  return repository;
}
 
开发者ID:yintaoxue,项目名称:read-open-source-code,代码行数:18,代码来源:ExecuteTransServlet.java

示例2: editRepository

import org.pentaho.di.core.plugins.RepositoryPluginType; //导入依赖的package包/类
public void editRepository() {
  try {
      PluginInterface plugin = null; 
      RepositoryMeta ri = input.searchRepository(model.getSelectedRepository().getName());
      if (ri != null) {
        plugin = PluginRegistry.getInstance().getPlugin(RepositoryPluginType.class, ri.getId());
        if (plugin == null) {
          throw new KettleException(BaseMessages.getString(PKG, "RepositoryLogin.ErrorFindingPlugin", ri.getId())); //$NON-NLS-1$
        }
      }
        RepositoryDialogInterface dd = getRepositoryDialog(plugin, ri, input, this.shell);
        if (dd.open(MODE.EDIT) != null) {
          fillRepositories();
          int idx = input.indexOfRepository(ri);
          model.setSelectedRepository(input.getRepository(idx));
          writeData();
        }
  } catch (Exception e) {
    log.logDetailed(BaseMessages.getString(PKG, "RepositoryLogin.ErrorEditingRepository", e.getLocalizedMessage()));//$NON-NLS-1$
    new ErrorDialog(shell, BaseMessages.getString(PKG, "Dialog.Error"), BaseMessages.getString(PKG, "RepositoryLogin.ErrorEditingRepository", e.getLocalizedMessage()), e); //$NON-NLS-1$ //$NON-NLS-2$
  }
}
 
开发者ID:yintaoxue,项目名称:read-open-source-code,代码行数:23,代码来源:RepositoriesHelper.java

示例3: openRepository

import org.pentaho.di.core.plugins.RepositoryPluginType; //导入依赖的package包/类
private void openRepository(String repositoryId) throws KettleXMLException {
  try {
    
    RepositoriesMeta repositoriesMeta = new RepositoriesMeta();
    repositoriesMeta.readData();
    repositoryMeta = repositoriesMeta.findRepository( repositoryId );
    PluginRegistry registry = PluginRegistry.getInstance();
    repository = registry.loadClass(
           RepositoryPluginType.class,
           repositoryMeta,
           Repository.class
      );
    repository.init(repositoryMeta);
    repository.connect(repositoryUsername, repositoryPassword);
    
  } catch(Exception e) {
    throw new KettleXMLException(e);
  }
}
 
开发者ID:jjeb,项目名称:kettle-trunk,代码行数:20,代码来源:SlaveServerConfig.java

示例4: openRepository

import org.pentaho.di.core.plugins.RepositoryPluginType; //导入依赖的package包/类
private Repository openRepository( String repositoryName, String user, String pass ) throws KettleException {

    if ( Utils.isEmpty( repositoryName ) ) {
      return null;
    }

    RepositoriesMeta repositoriesMeta = new RepositoriesMeta();
    repositoriesMeta.readData();
    RepositoryMeta repositoryMeta = repositoriesMeta.findRepository( repositoryName );
    if ( repositoryMeta == null ) {
      throw new KettleException( "Unable to find repository: " + repositoryName );
    }
    PluginRegistry registry = PluginRegistry.getInstance();
    Repository repository = registry.loadClass( RepositoryPluginType.class, repositoryMeta, Repository.class );
    repository.init( repositoryMeta );
    repository.connect( user, pass );
    return repository;
  }
 
开发者ID:pentaho,项目名称:pentaho-kettle,代码行数:19,代码来源:ExecuteJobServlet.java

示例5: connectRepository

import org.pentaho.di.core.plugins.RepositoryPluginType; //导入依赖的package包/类
public Repository connectRepository( RepositoriesMeta repositoriesMeta, String repositoryName, String username, String password ) throws KettleException {
  RepositoryMeta repositoryMeta = repositoriesMeta.findRepository( repositoryName );
  if ( repositoryMeta == null ) {
    log.logBasic( "I couldn't find the repository with name '" + repositoryName + "'" );
    return null;
  }

  Repository rep = PluginRegistry.getInstance().loadClass( RepositoryPluginType.class, repositoryMeta,
      Repository.class );
  rep.init( repositoryMeta );

  try {
    rep.connect( username, password );
    log.logBasic( "Connected to " + repositoryName + " as " + username );
    setRepository( rep );
    return rep;
  } catch ( Exception e ) {
    log.logBasic( "Unable to connect to the repository with name '" + repositoryName + "'" );
    return null;
  }
}
 
开发者ID:pentaho,项目名称:pentaho-kettle,代码行数:22,代码来源:JobExecutionConfiguration.java

示例6: connectRepository

import org.pentaho.di.core.plugins.RepositoryPluginType; //导入依赖的package包/类
public Repository connectRepository( RepositoriesMeta repositoriesMeta, String repositoryName, String username, String password ) throws KettleException {
  RepositoryMeta repositoryMeta = repositoriesMeta.findRepository( repositoryName );
  if ( repositoryMeta == null ) {
    log.logBasic( "I couldn't find the repository with name '" + repositoryName + "'" );
    return null;
  }
  Repository rep = PluginRegistry.getInstance().loadClass( RepositoryPluginType.class, repositoryMeta, Repository.class );
  if ( rep == null ) {
    log.logBasic( "Unable to load repository plugin for '" + repositoryName + "'" );
    return null;
  }
  rep.init( repositoryMeta );

  try {
    rep.connect( username, password );
    setRepository( rep );
    return rep;
  } catch ( Exception e ) {
    log.logBasic( "Unable to connect to the repository with name '" + repositoryName + "'" );
    return null;
  }
}
 
开发者ID:pentaho,项目名称:pentaho-kettle,代码行数:23,代码来源:TransExecutionConfiguration.java

示例7: init

import org.pentaho.di.core.plugins.RepositoryPluginType; //导入依赖的package包/类
/**
 * Initializes the Kettle environment. This method performs the following operations:
 * <p/>
 * - Creates a Kettle "home" directory if it does not already exist - Reads in the kettle.properties file -
 * Initializes the logging back-end - Sets the console log level to debug - If specified by parameter, configures
 * Simple JNDI - Registers the native types and the plugins for the various plugin types - Reads the list of variables
 * - Initializes the Lifecycle listeners
 *
 * @param simpleJndi true to configure Simple JNDI, false otherwise
 * @throws KettleException Any errors that occur during initialization will throw a KettleException.
 */
public static void init( boolean simpleJndi ) throws KettleException {
  init( Arrays.asList(
    RowDistributionPluginType.getInstance(),
    StepPluginType.getInstance(),
    StepDialogFragmentType.getInstance(),
    PartitionerPluginType.getInstance(),
    JobEntryPluginType.getInstance(),
    LogTablePluginType.getInstance(),
    RepositoryPluginType.getInstance(),
    LifecyclePluginType.getInstance(),
    KettleLifecyclePluginType.getInstance(),
    ImportRulePluginType.getInstance(),
    CartePluginType.getInstance(),
    CompressionPluginType.getInstance(),
    AuthenticationProviderPluginType.getInstance(),
    AuthenticationConsumerPluginType.getInstance(),
    EnginePluginType.getInstance()
  ), simpleJndi );
}
 
开发者ID:pentaho,项目名称:pentaho-kettle,代码行数:31,代码来源:KettleEnvironment.java

示例8: editRepository

import org.pentaho.di.core.plugins.RepositoryPluginType; //导入依赖的package包/类
public void editRepository() {
  try {
    PluginInterface plugin = null;
    RepositoryMeta ri = input.searchRepository( model.getSelectedRepository().getName() );
    if ( ri != null ) {
      plugin = PluginRegistry.getInstance().getPlugin( RepositoryPluginType.class, ri.getId() );
      if ( plugin == null ) {
        throw new KettleException( BaseMessages
          .getString( PKG, "RepositoryLogin.ErrorFindingPlugin", ri.getId() ) );
      }
    }
    RepositoryDialogInterface dd = getRepositoryDialog( plugin, ri, input, this.shell );
    if ( dd.open( MODE.EDIT ) != null ) {
      fillRepositories();
      int idx = input.indexOfRepository( ri );
      model.setSelectedRepository( input.getRepository( idx ) );
      writeData();
    }
  } catch ( Exception e ) {
    log.logDetailed( BaseMessages.getString( PKG, "RepositoryLogin.ErrorEditingRepository", e
      .getLocalizedMessage() ) );
    new ErrorDialog( shell, BaseMessages.getString( PKG, "Dialog.Error" ), BaseMessages.getString(
      PKG, "RepositoryLogin.ErrorEditingRepository", e.getLocalizedMessage() ), e );
  }
}
 
开发者ID:pentaho,项目名称:pentaho-kettle,代码行数:26,代码来源:RepositoriesHelper.java

示例9: loginToRepository

import org.pentaho.di.core.plugins.RepositoryPluginType; //导入依赖的package包/类
public void loginToRepository() throws KettleException, KettleSecurityException {
  if ( model != null && model.getSelectedRepository() != null ) {
    RepositoryMeta repositoryMeta =
      input.getRepository( model.getRepositoryIndex( model.getSelectedRepository() ) );
    repository =
      PluginRegistry.getInstance().loadClass(
        RepositoryPluginType.class, repositoryMeta.getId(), Repository.class );
    repository.init( repositoryMeta );
    repository.connect( model.getUsername(), model.getPassword() );
    props.setLastRepository( repositoryMeta.getName() );
    props.setLastRepositoryLogin( model.getUsername() );
  } else {
    log.logDetailed( BaseMessages.getString( PKG, "RepositoryLogin.ErrorLoginToRepository" ) );
    throw new KettleException( BaseMessages.getString( PKG, "RepositoryLogin.ErrorLoginToRepository" ) );
  }
}
 
开发者ID:pentaho,项目名称:pentaho-kettle,代码行数:17,代码来源:RepositoriesHelper.java

示例10: registerUIPluginObjectTypes

import org.pentaho.di.core.plugins.RepositoryPluginType; //导入依赖的package包/类
/**
 * The core plugin types don't know about UI classes. This method adds those in before initialization.
 *
 * TODO: create a SpoonLifecycle listener that can notify interested parties of a pre-initialization state so this can
 * happen in those listeners.
 */
private static void registerUIPluginObjectTypes() {
  RepositoryPluginType repositoryPluginType = RepositoryPluginType.getInstance();
  repositoryPluginType.addObjectType( RepositoryRevisionBrowserDialogInterface.class, "version-browser-classname" );
  repositoryPluginType.addObjectType( RepositoryDialogInterface.class, "dialog-classname" );

  PluginRegistry.addPluginType( SpoonPluginType.getInstance() );

  SpoonPluginType.getInstance().getPluginFolders().add( new PluginFolder( "plugins/repositories", false, true ) );

  LifecyclePluginType.getInstance().getPluginFolders().add( new PluginFolder( "plugins/spoon", false, true ) );
  LifecyclePluginType.getInstance().getPluginFolders().add( new PluginFolder( "plugins/repositories", false, true ) );

  PluginRegistry.addPluginType( JobDialogPluginType.getInstance() );
  PluginRegistry.addPluginType( TransDialogPluginType.getInstance() );
}
 
开发者ID:pentaho,项目名称:pentaho-kettle,代码行数:22,代码来源:Spoon.java

示例11: createRepository

import org.pentaho.di.core.plugins.RepositoryPluginType; //导入依赖的package包/类
public boolean createRepository( String id, Map<String, Object> items ) {
  try {
    RepositoryMeta repositoryMeta = pluginRegistry.loadClass( RepositoryPluginType.class, id, RepositoryMeta.class );
    repositoryMeta.populate( items, repositoriesMeta );

    if ( repositoryMeta.getName() != null ) {
      Repository repository =
        pluginRegistry.loadClass( RepositoryPluginType.class, repositoryMeta.getId(), Repository.class );
      repository.init( repositoryMeta );
      if ( currentRepository != null && isCompatibleRepositoryEdit( repositoryMeta ) ) {
        setConnectedRepository( repositoryMeta );
      }
      repositoriesMeta.addRepository( repositoryMeta );
      repositoriesMeta.writeData();
      currentRepository = repositoryMeta;
      if ( !testRepository( repository ) ) {
        return false;
      }
      ( (AbstractRepository) repository ).create();
    }
  } catch ( KettleException ke ) {
    log.logError( "Unable to load repository type", ke );
    return false;
  }
  return true;
}
 
开发者ID:pentaho,项目名称:pentaho-kettle,代码行数:27,代码来源:RepositoryConnectController.java

示例12: setUp

import org.pentaho.di.core.plugins.RepositoryPluginType; //导入依赖的package包/类
@Before
public void setUp() {
  controller = new RepositoryConnectController( pluginRegistry, () -> spoon, repositoriesMeta );

  when( pluginInterface.getName() ).thenReturn( PLUGIN_NAME );
  when( pluginInterface.getIds() ).thenReturn( new String[] { ID } );
  when( pluginInterface.getDescription() ).thenReturn( PLUGIN_DESCRIPTION );

  List<PluginInterface> plugins = new ArrayList<>();
  plugins.add( pluginInterface );

  when( pluginRegistry.getPlugins( RepositoryPluginType.class ) ).thenReturn( plugins );

  when( repositoryMeta.getId() ).thenReturn( ID );
  when( repositoryMeta.getName() ).thenReturn( PLUGIN_NAME );
  when( repositoryMeta.getDescription() ).thenReturn( PLUGIN_DESCRIPTION );
}
 
开发者ID:pentaho,项目名称:pentaho-kettle,代码行数:18,代码来源:RepositoryConnectControllerTest.java

示例13: testRepoSwitch

import org.pentaho.di.core.plugins.RepositoryPluginType; //导入依赖的package包/类
@Test
public void testRepoSwitch() throws Exception {
  when( pluginRegistry.loadClass( RepositoryPluginType.class, REPOSITORY_ID, Repository.class ) ).thenReturn(
      repository );

  KettleFileRepositoryMeta kettleFileRepositoryMeta = new KettleFileRepositoryMeta();
  kettleFileRepositoryMeta.setId( REPOSITORY_ID );
  kettleFileRepositoryMeta.setDescription( REPOSITORY_DESCRIPTION );
  kettleFileRepositoryMeta.setName( REPOSITORY_NAME );

  controller.connectToRepository( kettleFileRepositoryMeta );

  verify( spoon ).closeAllJobsAndTransformations( true );

  when( spoon.getRepository() ).thenReturn( repository );
  controller.connectToRepository( kettleFileRepositoryMeta );

  verify( spoon ).closeRepository();
}
 
开发者ID:pentaho,项目名称:pentaho-kettle,代码行数:20,代码来源:RepositoryConnectControllerTest.java

示例14: testOnlySetConnectedOnConnect

import org.pentaho.di.core.plugins.RepositoryPluginType; //导入依赖的package包/类
@Test
public void testOnlySetConnectedOnConnect() throws Exception {
  when( pluginRegistry.loadClass( RepositoryPluginType.class, ID, Repository.class ) )
    .thenReturn( repository );
  when( pluginRegistry.loadClass( RepositoryPluginType.class, ID, RepositoryMeta.class ) )
    .thenReturn( repositoryMeta );

  when( repository.test() ).thenReturn( true );

  Map<String, Object> items = new HashMap<>();
  boolean result = controller.createRepository( ID, items );

  assertEquals( true, result );
  assertNull( controller.getConnectedRepository() );

  controller.connectToRepository();
  assertNotNull( controller.getConnectedRepository() );
}
 
开发者ID:pentaho,项目名称:pentaho-kettle,代码行数:19,代码来源:RepositoryConnectControllerTest.java

示例15: testEditConnectedRepository

import org.pentaho.di.core.plugins.RepositoryPluginType; //导入依赖的package包/类
@Test
public void testEditConnectedRepository() throws Exception {
  RepositoryMeta before = new TestRepositoryMeta( ID, "name1", PLUGIN_DESCRIPTION, "same" );
  RepositoryMeta edited = new TestRepositoryMeta( ID, "name2", PLUGIN_DESCRIPTION, "same" );

  when( pluginRegistry.loadClass( RepositoryPluginType.class, ID, Repository.class ) )
    .thenReturn( repository );
  when( pluginRegistry.loadClass( RepositoryPluginType.class, ID, RepositoryMeta.class ) )
    .thenReturn( edited );

  when( repositoriesMeta.nrRepositories() ).thenReturn( 1 );
  when( repositoriesMeta.getRepository( 0 ) ).thenReturn( before );

  controller.setConnectedRepository( before.clone() );
  controller.setCurrentRepository( before );

  controller.createRepository( ID, new HashMap<>() );
  assertEquals( edited, controller.getConnectedRepository() );
}
 
开发者ID:pentaho,项目名称:pentaho-kettle,代码行数:20,代码来源:RepositoryConnectControllerTest.java


注:本文中的org.pentaho.di.core.plugins.RepositoryPluginType类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。