import org.pentaho.di.trans.TransMeta; //导入方法依赖的package包/类
@Override
public void getData( TransMeta transMeta ) throws KettleException {
try {
String serviceName = transMeta.getAttribute( StreamingConst.STREAMING_GROUP, StreamingConst.STREAMING_SERVICE_NAME );
if ( Const.isEmpty( serviceName ) ) {
return;
}
MetaStoreFactory rtFactory = new MetaStoreFactory( StreamingService.class, transMeta.getMetaStore(), PentahoDefaults.NAMESPACE );
StreamingService streamingService = rtFactory.loadElement( serviceName );
if ( streamingService == null ) {
return;
}
wServiceName.setText( Const.NVL( streamingService.getName(), "" ) );
wServiceStep.setText( Const.NVL( streamingService.getStepname(), "" ) );
wServiceCacheDuration.setText( Const.NVL( streamingService.getCacheDuration(), "" ) );
wServiceCacheSize.setText( Const.NVL( streamingService.getCacheSize(), "" ) );
wPreloadService.setSelection( streamingService.isPreloaded() );
wClearOnStart.setSelection( streamingService.isClearingOnStart() );
wReplaceAtTransEnd.setSelection(streamingService.isCacheFlipping());
LogLevel logLevel = streamingService.getLogLevel()==null ? LogLevel.BASIC : streamingService.getLogLevel();
wLogLevel.select( logLevel.getLevel() );
} catch ( Exception e ) {
throw new KettleException( "Unable to load streaming service", e );
}
}