i fixed the file loading progress bar by creating a boolean isLoadingFile in OrderDB
This commit is contained in:
@@ -43,6 +43,7 @@ public class OrderDB {
|
|||||||
private ProgressListener mListener;
|
private ProgressListener mListener;
|
||||||
private PreparedStatement prep;
|
private PreparedStatement prep;
|
||||||
private String dbLocation;
|
private String dbLocation;
|
||||||
|
private boolean isLoadingFile = false;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Creates a new OrderDB
|
* Creates a new OrderDB
|
||||||
@@ -113,7 +114,7 @@ public class OrderDB {
|
|||||||
ByteArrayInputStream bais;
|
ByteArrayInputStream bais;
|
||||||
ObjectInputStream ins;
|
ObjectInputStream ins;
|
||||||
while (rs.next()) {
|
while (rs.next()) {
|
||||||
if(mListener != null)
|
if(mListener != null && ! isLoadingFile)
|
||||||
mListener.onProgressUpdate(row++);
|
mListener.onProgressUpdate(row++);
|
||||||
bais = new ByteArrayInputStream(rs.getBytes("item"));
|
bais = new ByteArrayInputStream(rs.getBytes("item"));
|
||||||
ins = new ObjectInputStream(bais);
|
ins = new ObjectInputStream(bais);
|
||||||
@@ -138,6 +139,7 @@ public class OrderDB {
|
|||||||
public void load(File file) throws SQLException, IOException, OrderExistsException, ClassNotFoundException{
|
public void load(File file) throws SQLException, IOException, OrderExistsException, ClassNotFoundException{
|
||||||
Scanner scan = new Scanner(file);
|
Scanner scan = new Scanner(file);
|
||||||
int line = 1;
|
int line = 1;
|
||||||
|
isLoadingFile = true;
|
||||||
|
|
||||||
Connection conn = getConnection();
|
Connection conn = getConnection();
|
||||||
prep = conn.prepareStatement(INSERT);
|
prep = conn.prepareStatement(INSERT);
|
||||||
@@ -159,6 +161,8 @@ public class OrderDB {
|
|||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
conn.close();
|
||||||
|
isLoadingFile = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@@ -67,6 +67,7 @@ public class MainWindow extends JFrame implements ActionListener, ProgressListen
|
|||||||
panel.add(mLoadFileButton);
|
panel.add(mLoadFileButton);
|
||||||
|
|
||||||
mProgressBar = new JProgressBar();
|
mProgressBar = new JProgressBar();
|
||||||
|
mProgressBar.setStringPainted(true);
|
||||||
getContentPane().add(mProgressBar, BorderLayout.SOUTH);
|
getContentPane().add(mProgressBar, BorderLayout.SOUTH);
|
||||||
setVisible(true);
|
setVisible(true);
|
||||||
pack();
|
pack();
|
||||||
@@ -111,7 +112,6 @@ public class MainWindow extends JFrame implements ActionListener, ProgressListen
|
|||||||
mProgressBar.setIndeterminate(true);
|
mProgressBar.setIndeterminate(true);
|
||||||
mCurrentFile = fc.getSelectedFile().toString();
|
mCurrentFile = fc.getSelectedFile().toString();
|
||||||
mProgressBar.setString(mCurrentFile);
|
mProgressBar.setString(mCurrentFile);
|
||||||
mProgressBar.setStringPainted(true);
|
|
||||||
mProgressBar.setMaximum(countLines(fc.getSelectedFile())+1);
|
mProgressBar.setMaximum(countLines(fc.getSelectedFile())+1);
|
||||||
|
|
||||||
java.util.concurrent.Executors.newSingleThreadExecutor().submit(new Runnable() {
|
java.util.concurrent.Executors.newSingleThreadExecutor().submit(new Runnable() {
|
||||||
@@ -178,7 +178,7 @@ public class MainWindow extends JFrame implements ActionListener, ProgressListen
|
|||||||
public void onProgressUpdate(int progress) {
|
public void onProgressUpdate(int progress) {
|
||||||
progress++;
|
progress++;
|
||||||
mProgressBar.setValue(progress);
|
mProgressBar.setValue(progress);
|
||||||
mProgressBar.setString(" "+mCurrentFile + " ~ Parsing Order: "+progress+" of "+mProgressBar.getMaximum()+" ");
|
mProgressBar.setString(" "+mCurrentFile + " ~ Parsing Order: "+ progress +" of "+mProgressBar.getMaximum()+" ");
|
||||||
if(mProgressBar.isIndeterminate()) {
|
if(mProgressBar.isIndeterminate()) {
|
||||||
mProgressBar.setIndeterminate(false);
|
mProgressBar.setIndeterminate(false);
|
||||||
pack();
|
pack();
|
||||||
|
|||||||
Reference in New Issue
Block a user