Learn

  1. Clean Code, YouTube
  2. PHP: The Right Way, link
  3. Udemy courses
  4. Design Pattern, Doc

Todo - Project repo, doc

Done - Project

  1. The taverna workflow can take spreadsheet input, and output formatted url.
    1.1 Deduplication, remove newline and replace space with %20
  2. Update the Dockerfile by hardcoding the file path and exclude Python but return error:
OpenJDK 64-Bit Server VM warning: ignoring option MaxPermSize=200m; support was removed in 8.0
Exception from method net.sf.taverna.raven.launcher.Launcher.main(String[])
java.lang.NullPointerException
        at sun.awt.FontConfiguration.getVersion(FontConfiguration.java:1264)
        at sun.awt.FontConfiguration.readFontConfigFile(FontConfiguration.java:219)
        at sun.awt.FontConfiguration.init(FontConfiguration.java:107)
        at sun.awt.X11FontManager.createFontConfiguration(X11FontManager.java:774)
        at sun.font.SunFontManager$2.run(SunFontManager.java:431)
        at java.security.AccessController.doPrivileged(Native Method)
        at sun.font.SunFontManager.<init>(SunFontManager.java:376)
        at sun.awt.FcFontManager.<init>(FcFontManager.java:35)
        at sun.awt.X11FontManager.<init>(X11FontManager.java:57)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
        at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
        at java.lang.Class.newInstance(Class.java:442)
        at sun.font.FontManagerFactory$1.run(FontManagerFactory.java:83)
        at java.security.AccessController.doPrivileged(Native Method)
        at sun.font.FontManagerFactory.getInstance(FontManagerFactory.java:74)
        at sun.font.SunFontManager.getInstance(SunFontManager.java:250)
        at sun.font.FontDesignMetrics.getMetrics(FontDesignMetrics.java:264)
        at sun.swing.SwingUtilities2.getFontMetrics(SwingUtilities2.java:1107)
        at javax.swing.JComponent.getFontMetrics(JComponent.java:1617)
        at javax.swing.plaf.basic.BasicProgressBarUI.getPreferredSize(BasicProgressBarUI.java:821)
        at javax.swing.JComponent.getPreferredSize(JComponent.java:1653)
        at java.awt.BorderLayout.preferredLayoutSize(BorderLayout.java:729)
        at java.awt.Container.preferredSize(Container.java:1799)
        at java.awt.Container.getPreferredSize(Container.java:1783)
        at javax.swing.JComponent.getPreferredSize(JComponent.java:1655)
        at javax.swing.JRootPane$RootLayout.preferredLayoutSize(JRootPane.java:920)
        at java.awt.Container.preferredSize(Container.java:1799)
        at java.awt.Container.getPreferredSize(Container.java:1783)
        at javax.swing.JComponent.getPreferredSize(JComponent.java:1655)
        at java.awt.BorderLayout.preferredLayoutSize(BorderLayout.java:719)
        at java.awt.Container.preferredSize(Container.java:1799)
        at java.awt.Container.getPreferredSize(Container.java:1783)
        at java.awt.Window.pack(Window.java:809)
        at net.sf.taverna.raven.SplashScreen.<init>(SplashScreen.java:118)
        at net.sf.taverna.raven.SplashScreen.<init>(SplashScreen.java:105)
        at net.sf.taverna.raven.SplashScreen.getSplashScreen(SplashScreen.java:88)
        at net.sf.taverna.raven.launcher.Launcher.prepareSplashScreen(Launcher.java:225)
        at net.sf.taverna.raven.launcher.Launcher.launchMain(Launcher.java:127)
        at net.sf.taverna.raven.launcher.Launcher.main(Launcher.java:64)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at net.sf.taverna.raven.prelauncher.PreLauncher.runLauncher(PreLauncher.java:115)
        at net.sf.taverna.raven.prelauncher.PreLauncher.launchArgs(PreLauncher.java:69)
        at net.sf.taverna.raven.prelauncher.PreLauncher.main(PreLauncher.java:47)

Todo

  1. Add-additional-info-to-preview-#428
    1.1 Fix the getPreviewDataForLinks array and the pass the unit test
    1.2 What information from webClient returned need to store in that array?

Done

  1. Add-additional-info-to-preview-#428
    1.1 Update getPreviewDataForLinks return array:
Array
(
    [0] => Array
        (
            [short_doi] => 100249
            [external_url] => http://foo6.com
            [type] => 3D Models
            [title] => Exercise generates immune cells in bone
            [description] => Mechanosensing stem-cell niche promotes lymphocyte production.
            [imageUrl] => https://media.nature.com/lw1024/magazine-assets/d41586-021-00419-y/d41586-021-00419-y_18880568.png
        )
)

1.2 Pass unittest for getPreviewDataForLinks if the url is hardcoded.
1.3 Try to mock the webClient response.

Reference

Build Status