本文整理汇总了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;
}
示例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$
}
}
示例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);
}
}
示例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;
}
示例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;
}
}
示例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;
}
}
示例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 );
}
示例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 );
}
}
示例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" ) );
}
}
示例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() );
}
示例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;
}
示例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 );
}
示例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();
}
示例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() );
}
示例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() );
}