Skip to content

Commit

Permalink
fixes on adding printers
Browse files Browse the repository at this point in the history
unique printers were not ignored
  • Loading branch information
lHeidbreder committed Dec 11, 2023
1 parent d044859 commit 5b049e8
Show file tree
Hide file tree
Showing 4 changed files with 9 additions and 8 deletions.
Binary file modified META-INF/2Pack.zip
Binary file not shown.
2 changes: 1 addition & 1 deletion META-INF/MANIFEST.MF
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: beluga.serverprint
Bundle-SymbolicName: beluga.serverprint
Bundle-Version: 5.0.0.qualifier
Bundle-Version: 5.1.0.qualifier
Service-Component: OSGI-INF/*.xml
Bundle-RequiredExecutionEnvironment: JavaSE-11
Require-Bundle: org.adempiere.base;bundle-version="5.1.0",
Expand Down
4 changes: 2 additions & 2 deletions src/de/schoenbeck/serverprint/model/MPrinterProvider.java
Original file line number Diff line number Diff line change
Expand Up @@ -32,8 +32,8 @@ public MPrinterProvider(Properties ctx, ResultSet rs, String trxName) {
}

public List<MPrinter> getKnownPrinters() {
final String sql = "SELECT * FROM " + MPrinter.Table_Name
+ " WHERE " + MPrinterProvider.Table_Name + " = ?";
final String sql = "SELECT DISTINCT * FROM " + MPrinter.Table_Name
+ " WHERE " + MPrinter.COLUMNNAME_sbsp_printerprovider_ID + " = ?";
LinkedList<MPrinter> rtn = new LinkedList<>();

PreparedStatement ps = null;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,13 +25,14 @@ protected String doIt() throws Exception {
.orElseThrow( () -> new NoSuchElementException("The provider does not exist.") );
var printers = lookupProcess.getAvailablePrinters(record_id, get_TrxName());

var knownPrinters = new HashSet<Integer>();
for (int i : provider.getKnownPrinterIDs())
knownPrinters.add(i);
HashSet<MPrinter> knownPrinters = new HashSet<>(provider.getKnownPrinters());

outerloop:
for (MPrinter p : printers) {
if (!knownPrinters.contains(p.get_ID()))
p.save();
for (var k : knownPrinters)
if (p.getValue().equals(k.getValue()))
break outerloop;
p.save();
}

//TODO: optionally show printers to user and let them select, which to keep
Expand Down

0 comments on commit 5b049e8

Please sign in to comment.