Mercurial Hosting > nabble
view src/nabble/model/export/ImportImpl.java @ 47:72765b66e2c3
remove mailing list code
author | Franklin Schmidt <fschmidt@gmail.com> |
---|---|
date | Fri, 18 Jun 2021 17:44:24 -0600 |
parents | 7ecd1a4ef557 |
children |
line wrap: on
line source
package nabble.model.export; import fschmidt.db.DbDatabase; import nabble.model.ModelException; import nabble.model.ModelHome; import nabble.model.Node; import nabble.model.Site; import nabble.model.User; import nabble.view.lib.Jtp; import javax.imageio.ImageIO; import java.awt.image.BufferedImage; import java.io.IOException; import java.net.URL; import java.util.Date; final class ImportImpl extends AbstractImportImpl { ImportImpl(Site site) { super(site); } protected void start() { ModelHome.beginImport(); } protected void end() { ModelHome.endImport(); } protected String createNode(NodeData data) throws ModelException { Node node; DbDatabase db = site.getDb(); db.beginTransaction(); try { node = site.getGoodCopy().newNode(data); db.commitTransaction(); } finally { db.endTransaction(); } return Jtp.url(node.getGoodCopy()); } public void addUser(String name, String email, String passwordDigest, Date registrationDate, String smallAvatarUrl, String bigAvatarUrl) { final DbDatabase db = site.getDb(); db.beginTransaction(); try { User user = site.getOrCreateUser(email, name); if (!user.isRegistered()) { user.setPasswordDigest(passwordDigest); user.register(registrationDate); user.update(); user = user.getGoodCopy(); if (!user.hasAvatar() && smallAvatarUrl != null && bigAvatarUrl != null) { BufferedImage small = ImageIO.read(new URL(smallAvatarUrl)); BufferedImage big = ImageIO.read(new URL(bigAvatarUrl)); user.saveAvatar(small, big); } } db.commitTransaction(); } catch (IOException e) { throw new RuntimeException(e); } catch (ModelException e) { throw new RuntimeException(e); } finally { db.endTransaction(); } } }