@ -63,26 +63,27 @@ public final class StoreProcedureDataWrapper implements TableDataWrapper {
public StoreProcedureDataWrapper ( Component component , StoreProcedure storeProcedure , String storeprocedureName , String dsName ) {
this ( component , storeProcedure , storeprocedureName , dsName , true ) ;
}
/ * *
* @param : component loadingBar的父弹框 ( 如果不设置父弹框的话 , 可能出现loadingBar隐藏在一个弹框后的情况 )
* @param : storeProcedure 存储过程
* @param : storeprocedureName 存储过程的名字 ( 某些情况下可以为空 )
* @param : dsName 存储过程一个返回数据集的名字
* @param : needLoad 是否要加载
* @param component loadingBar的父弹框 ( 如果不设置父弹框的话 , 可能出现loadingBar隐藏在一个弹框后的情况 )
* @param storeProcedure 存储过程
* @param storeprocedureName 存储过程的名字 ( 某些情况下可以为空 )
* @param dsName 存储过程一个返回数据集的名字
* @param needLoad 是否要加载
* * /
public StoreProcedureDataWrapper ( Component component , StoreProcedure storeProcedure , String storeprocedureName , String dsName , boolean needLoad ) {
this . dsName = dsName ;
this . storeProcedure = storeProcedure ;
this . storeProcedure . setCalculating ( false ) ;
this . storeprocedureName = storeprocedureName ;
if ( needLoad ) {
setWorker ( ) ;
}
if ( component = = null ) {
component = new JFrame ( ) ;
}
if ( needLoad ) {
setWorker ( component ) ;
}
loadingBar = new AutoProgressBar ( component , Toolkit . i18nText ( "Fine-Design_Basic_Loading_Data" ) , "" , 0 , 100 ) {
@Override
public void doMonitorCanceled ( ) {
getWorker ( ) . cancel ( true ) ;
}
@ -93,16 +94,17 @@ public final class StoreProcedureDataWrapper implements TableDataWrapper {
* 数据集执行结果返回的所有字段
*
* @return 数据集执行结果返回的所有字段
*
*
* @date 2014 - 12 - 3 - 下午7 : 43 : 17
*
* /
* @date 2014 - 12 - 3 - 下午7 : 43 : 17
* /
@Override
public List < String > calculateColumnNameList ( ) {
if ( columnNameList ! = null ) {
return columnNameList ;
}
if ( ! createStore ( false ) ) {
try {
createStore ( false ) ;
} catch ( Exception e ) {
FineJOptionPane . showMessageDialog ( DesignerContext . getDesignerFrame ( ) , Toolkit . i18nText ( "Fine-Design_Basic_Engine_No_TableData" ) ) ;
return new ArrayList < String > ( ) ;
}
@ -114,11 +116,9 @@ public final class StoreProcedureDataWrapper implements TableDataWrapper {
* 生成子节点
*
* @return 节点数组
*
*
* @date 2014 - 12 - 3 - 下午7 : 06 : 47
*
* /
* @date 2014 - 12 - 3 - 下午7 : 06 : 47
* /
@Override
public ExpandMutableTreeNode [ ] load ( ) {
List < String > namelist ;
if ( storeProcedure . isCalculating ( ) ) {
@ -134,23 +134,16 @@ public final class StoreProcedureDataWrapper implements TableDataWrapper {
return res ;
}
private boolean createStore ( boolean needLoadingBar ) {
try {
dataModels = DesignTableDataManager . createLazyDataModel ( storeProcedure , needLoadingBar ) ;
if ( dataModels = = null | | dataModels . length = = 0 ) {
return false ;
}
for ( int i = 0 ; i < dataModels . length ; i + + ) {
if ( ComparatorUtils . equals ( this . dsName , storeprocedureName + "_" + dataModels [ i ] . getName ( ) ) ) {
procedureDataModel = dataModels [ i ] ;
private void createStore ( boolean needLoadingBar ) throws Exception {
dataModels = DesignTableDataManager . createLazyDataModel ( storeProcedure , needLoadingBar ) ;
if ( dataModels ! = null & & dataModels . length ! = 0 ) {
for ( ProcedureDataModel dataModel : dataModels ) {
if ( ComparatorUtils . equals ( this . dsName , storeprocedureName + "_" + dataModel . getName ( ) ) ) {
procedureDataModel = dataModel ;
break ;
}
}
return true ;
} catch ( Exception e ) {
FineLoggerFactory . getLogger ( ) . error ( e . getMessage ( ) , e ) ;
}
return false ;
}
@Override
@ -159,17 +152,15 @@ public final class StoreProcedureDataWrapper implements TableDataWrapper {
}
/ * *
* 预览数据
*
* @param previewModel 预览模式 , 全部还是一个
*
*
* @date 2014 - 12 - 3 - 下午7 : 05 : 50
*
* /
* 预览数据
*
* @param previewModel 预览模式 , 全部还是一个
* @date 2014 - 12 - 3 - 下午7 : 05 : 50
* /
public void previewData ( final int previewModel ) {
this . previewModel = previewModel ;
connectionBar = new AutoProgressBar ( new JFrame ( ) , Toolkit . i18nText ( "Fine-Design_Basic_Utils_Now_Create_Connection" ) , "" , 0 , 100 ) {
@Override
public void doMonitorCanceled ( ) {
connectionBar . close ( ) ;
worker . cancel ( true ) ;
@ -178,8 +169,9 @@ public final class StoreProcedureDataWrapper implements TableDataWrapper {
worker . execute ( ) ;
}
private void setWorker ( ) {
private void setWorker ( final Component parent ) {
worker = new SwingWorker < Void , Void > ( ) {
@Override
protected Void doInBackground ( ) throws Exception {
loadingBar . close ( ) ;
PreviewTablePane . resetPreviewTable ( ) ;
@ -195,6 +187,7 @@ public final class StoreProcedureDataWrapper implements TableDataWrapper {
return null ;
}
@Override
public void done ( ) {
try {
get ( ) ;
@ -206,13 +199,15 @@ public final class StoreProcedureDataWrapper implements TableDataWrapper {
case StoreProcedureDataWrapper . PREVIEW_ONE :
previewData ( ) ;
break ;
default :
break ;
}
} catch ( Exception e ) {
loadingBar . close ( ) ;
if ( ! ( e instanceof CancellationException ) ) {
FineLoggerFactory . getLogger ( ) . error ( e . getMessage ( ) , e ) ;
FineJOptionPane . showMessageDialog ( DesignerContext . getDesignerFrame ( ) , e . getMessage ( ) ) ;
FineJOptionPane . showMessageDialog ( parent , e . getMessage ( ) ) ;
}
loadingBar . close ( ) ;
}
}
} ;
@ -227,10 +222,9 @@ public final class StoreProcedureDataWrapper implements TableDataWrapper {
/ * *
* 预览返回的一个数据集
*
*
* @date 2014 - 12 - 3 - 下午7 : 42 : 53
*
* /
* @date 2014 - 12 - 3 - 下午7 : 42 : 53
* /
@Override
public void previewData ( ) {
previewData ( - 1 , - 1 ) ;
}
@ -240,13 +234,11 @@ public final class StoreProcedureDataWrapper implements TableDataWrapper {
/ * *
* 预览返回的一个数据集 , 带有显示值和实际值的标记结果
*
* @param keyIndex 实际值
* @param valueIndex 显示值
*
*
* @date 2014 - 12 - 3 - 下午7 : 42 : 27
*
* /
* @param keyIndex 实际值
* @param valueIndex 显示值
* @date 2014 - 12 - 3 - 下午7 : 42 : 27
* /
@Override
public void previewData ( final int keyIndex , final int valueIndex ) {
PreviewTablePane . previewStoreData ( procedureDataModel , keyIndex , valueIndex ) ;
}
@ -257,7 +249,9 @@ public final class StoreProcedureDataWrapper implements TableDataWrapper {
* /
public void previewAllTable ( ) {
if ( procedureDataModel = = null ) {
if ( ! createStore ( true ) ) {
try {
createStore ( true ) ;
} catch ( Exception e ) {
return ;
}
}
@ -269,6 +263,7 @@ public final class StoreProcedureDataWrapper implements TableDataWrapper {
return dsName ;
}
@Override
public TableData getTableData ( ) {
return storeProcedure ;
}
@ -282,10 +277,12 @@ public final class StoreProcedureDataWrapper implements TableDataWrapper {
*
* @return 是否异常
* /
@Override
public boolean isUnusual ( ) {
return false ;
}
@Override
public boolean equals ( Object obj ) {
return obj instanceof StoreProcedureDataWrapper
& & ComparatorUtils . equals ( this . dsName , ( ( StoreProcedureDataWrapper ) obj ) . getTableDataName ( ) )