public void save(Button.ClickEvent event) { try { formFieldBindings.commit(); service.saveAsNewCoin(coin, crawlerResult); String msg = String.format("Saved '%s'.", coin.getName()); Notification.show(msg, Notification.Type.TRAY_NOTIFICATION); parentTable.refreshResults(); } catch (FieldGroup.CommitException e) { e.printStackTrace(); } }
public void edit(CrawlerResult crawlerResult) { this.crawlerResult = crawlerResult; if (crawlerResult != null) { coin = new Coin(); coin.setName(crawlerResult.getName()); coin.setNominal(NameUtils.parseNominal(crawlerResult.getName())); CoinVariant variant = new CoinVariant(); // variant.setReleaseDate(LocalDate.now()); variant.setVariant(NameUtils.parseVariant(crawlerResult.getVariant())); if (variant.getVariant() == Variant.UNKNOWN) { variant.setVariant(NameUtils.parseVariant(crawlerResult.getName())); } coin.addVariant(variant); variantField.setValue(variant.getVariant()); CoinVariantHistory history = new CoinVariantHistory(); history.setDate(crawlerResult.getProcessed()); history.setSource(crawlerResult.getSource().toString()); Money price = PriceUtils.parse(crawlerResult.getPrice()); if (price == null) { price = Money.euros(0.0); } history.setPrice(price); variant.addHistory(history); priceField.setValue(price.toString()); formFieldBindings = BeanFieldGroup.bindFieldsBuffered(coin, this); sourceLink.setCaption(LinkUtils.getSourceUrl(crawlerResult)); sourceLink.setResource(new ExternalResource(LinkUtils.getUrl(crawlerResult))); sourceLink.setTargetName("_blank"); name.focus(); } setVisible(crawlerResult != null); }