commit 894ac6525ec3f0dd226f0a59dfbf9041a9759bb3 Author: Celeste Madeline Samuel Nokto Dur Grossiord Date: Sat Aug 29 13:20:16 2026 +0200 0.0.1.0 diff --git a/.metadata/.lock b/.metadata/.lock new file mode 100644 index 0000000..e69de29 diff --git a/.metadata/.lock_info b/.metadata/.lock_info new file mode 100644 index 0000000..644b25b --- /dev/null +++ b/.metadata/.lock_info @@ -0,0 +1,4 @@ +#Sat Aug 29 13:08:22 CEST 2026 +host=fedora.home +process-id=3 +user=Kotama_Chio diff --git a/.metadata/.log b/.metadata/.log new file mode 100644 index 0000000..4308e9a --- /dev/null +++ b/.metadata/.log @@ -0,0 +1,875 @@ +!SESSION 2026-08-06 03:25:18.324 ----------------------------------------------- +eclipse.buildId=4.40.0.20260604-0652 +java.version=21.0.11 +java.vendor=Eclipse Adoptium +BootLoader constants: OS=linux, ARCH=x86_64, WS=gtk, NL=en_US +Framework arguments: -product org.eclipse.epp.package.java.product +Command-line arguments: -os linux -ws gtk -arch x86_64 -product org.eclipse.epp.package.java.product + +!ENTRY ch.qos.logback.classic 1 0 2026-08-06 03:25:22.025 +!MESSAGE Activated before the state location was initialized. Retry after the state location is initialized. + +!ENTRY ch.qos.logback.classic 1 0 2026-08-06 03:25:53.627 +!MESSAGE Logback config file: /home/Kotama_Chio/Musique/SillyBlahaj.org/Java/.metadata/.plugins/org.eclipse.m2e.logback/logback.2.7.101.20251017-1242.xml +!SESSION 2026-08-07 17:09:03.147 ----------------------------------------------- +eclipse.buildId=4.40.0.20260604-0652 +java.version=21.0.11 +java.vendor=Eclipse Adoptium +BootLoader constants: OS=linux, ARCH=x86_64, WS=gtk, NL=en_US +Framework arguments: -product org.eclipse.epp.package.java.product +Command-line arguments: -os linux -ws gtk -arch x86_64 -product org.eclipse.epp.package.java.product + +!ENTRY ch.qos.logback.classic 1 0 2026-08-07 17:09:07.165 +!MESSAGE Activated before the state location was initialized. Retry after the state location is initialized. + +!ENTRY ch.qos.logback.classic 1 0 2026-08-07 17:09:11.379 +!MESSAGE Logback config file: /home/Kotama_Chio/Musique/SillyBlahaj.org/Java/.metadata/.plugins/org.eclipse.m2e.logback/logback.2.7.101.20251017-1242.xml +!SESSION 2026-08-17 20:59:24.738 ----------------------------------------------- +eclipse.buildId=4.40.0.20260604-0652 +java.version=21.0.11 +java.vendor=Eclipse Adoptium +BootLoader constants: OS=linux, ARCH=x86_64, WS=gtk, NL=en_US +Framework arguments: -product org.eclipse.epp.package.java.product +Command-line arguments: -os linux -ws gtk -arch x86_64 -product org.eclipse.epp.package.java.product + +!ENTRY ch.qos.logback.classic 1 0 2026-08-17 20:59:29.233 +!MESSAGE Activated before the state location was initialized. Retry after the state location is initialized. + +!ENTRY ch.qos.logback.classic 1 0 2026-08-17 20:59:37.099 +!MESSAGE Logback config file: /home/Kotama_Chio/Musique/SillyBlahaj.org/Java/.metadata/.plugins/org.eclipse.m2e.logback/logback.2.7.101.20251017-1242.xml + +!ENTRY org.eclipse.ui 4 0 2026-08-17 23:17:39.096 +!MESSAGE Unhandled event loop exception +!STACK 0 +java.nio.file.InvalidPathException: Malformed input or input contains unmappable characters: /home/Kotama_Chio/Téléchargements/sqlite-jdbc-3.53.2.1.jar + at java.base/sun.nio.fs.UnixPath.encode(UnixPath.java:129) + at java.base/sun.nio.fs.UnixPath.(UnixPath.java:76) + at java.base/sun.nio.fs.UnixFileSystem.getPath(UnixFileSystem.java:313) + at java.base/java.nio.file.Path.of(Path.java:148) + at org.eclipse.core.runtime.IPath.toPath(IPath.java:556) + at org.eclipse.jdt.internal.core.ExternalFoldersManager.isExternalFolderPath(ExternalFoldersManager.java:156) + at org.eclipse.jdt.internal.core.JavaProject.addToResult(JavaProject.java:3268) + at org.eclipse.jdt.internal.core.JavaProject.resolveClasspath(JavaProject.java:3236) + at org.eclipse.jdt.internal.core.JavaProject.resolveClasspath(JavaProject.java:3099) + at org.eclipse.jdt.internal.core.ClasspathEntry.validateClasspath(ClasspathEntry.java:1883) + at org.eclipse.jdt.core.JavaConventions.validateClasspath(JavaConventions.java:778) + at org.eclipse.jdt.internal.ui.wizards.buildpaths.BuildPathsBlock.updateBuildPathStatus(BuildPathsBlock.java:696) + at org.eclipse.jdt.internal.ui.wizards.buildpaths.BuildPathsBlock.updateClassPathStatus(BuildPathsBlock.java:645) + at org.eclipse.jdt.internal.ui.wizards.buildpaths.BuildPathsBlock.buildPathDialogFieldChanged(BuildPathsBlock.java:574) + at org.eclipse.jdt.internal.ui.wizards.buildpaths.BuildPathsBlock$BuildPathAdapter.dialogFieldChanged(BuildPathsBlock.java:529) + at org.eclipse.jdt.internal.ui.wizards.dialogfields.DialogField.dialogFieldChanged(DialogField.java:78) + at org.eclipse.jdt.internal.ui.wizards.dialogfields.ListDialogField.dialogFieldChanged(ListDialogField.java:509) + at org.eclipse.jdt.internal.ui.wizards.dialogfields.CheckedListDialogField.dialogFieldChanged(CheckedListDialogField.java:119) + at org.eclipse.jdt.internal.ui.wizards.dialogfields.ListDialogField.setElements(ListDialogField.java:588) + at org.eclipse.jdt.internal.ui.wizards.buildpaths.LibrariesWorkbookPage.updateClasspathList(LibrariesWorkbookPage.java:1124) + at org.eclipse.jdt.internal.ui.wizards.buildpaths.LibrariesWorkbookPage.libaryPageDialogFieldChanged(LibrariesWorkbookPage.java:1085) + at org.eclipse.jdt.internal.ui.wizards.buildpaths.LibrariesWorkbookPage$LibrariesAdapter.dialogFieldChanged(LibrariesWorkbookPage.java:445) + at org.eclipse.jdt.internal.ui.wizards.dialogfields.DialogField.dialogFieldChanged(DialogField.java:78) + at org.eclipse.jdt.internal.ui.wizards.dialogfields.TreeListDialogField.dialogFieldChanged(TreeListDialogField.java:440) + at org.eclipse.jdt.internal.ui.wizards.dialogfields.TreeListDialogField.setElements(TreeListDialogField.java:526) + at org.eclipse.jdt.internal.ui.wizards.buildpaths.LibrariesWorkbookPage.libaryPageCustomButtonPressed(LibrariesWorkbookPage.java:536) + at org.eclipse.jdt.internal.ui.wizards.buildpaths.LibrariesWorkbookPage$LibrariesAdapter.customButtonPressed(LibrariesWorkbookPage.java:412) + at org.eclipse.jdt.internal.ui.wizards.dialogfields.TreeListDialogField.buttonPressed(TreeListDialogField.java:177) + at org.eclipse.jdt.internal.ui.wizards.dialogfields.TreeListDialogField.doButtonSelected(TreeListDialogField.java:412) + at org.eclipse.jdt.internal.ui.wizards.dialogfields.TreeListDialogField$2.widgetSelected(TreeListDialogField.java:373) + at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:290) + at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:91) + at org.eclipse.swt.widgets.Display.sendEvent(Display.java:5865) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1656) + at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:5080) + at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:4515) + at org.eclipse.jface.window.Window.runEventLoop(Window.java:819) + at org.eclipse.jface.window.Window.open(Window.java:799) + at org.eclipse.jdt.internal.ui.wizards.buildpaths.newsourcepage.ConfigureBuildPathAction.run(ConfigureBuildPathAction.java:87) + at org.eclipse.jface.action.Action.runWithEvent(Action.java:474) + at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:581) + at org.eclipse.jface.action.ActionContributionItem.lambda$4(ActionContributionItem.java:415) + at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:91) + at org.eclipse.swt.widgets.Display.sendEvent(Display.java:5865) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1656) + at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:5080) + at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:4515) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1160) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:339) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1051) + at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:153) + at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:684) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:339) + at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:583) + at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:173) + at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:193) + at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:219) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:149) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:115) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:467) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:298) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) + at java.base/java.lang.reflect.Method.invoke(Method.java:580) + at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:615) + at org.eclipse.equinox.launcher.Main.basicRun(Main.java:563) + at org.eclipse.equinox.launcher.Main.run(Main.java:1415) + at org.eclipse.equinox.launcher.Main.main(Main.java:1387) + +!ENTRY org.eclipse.core.jobs 4 2 2026-08-17 23:17:42.757 +!MESSAGE An internal error occurred during: "Setting build path". +!STACK 0 +java.nio.file.InvalidPathException: Malformed input or input contains unmappable characters: /home/Kotama_Chio/Téléchargements/sqlite-jdbc-3.53.2.1.jar + at java.base/sun.nio.fs.UnixPath.encode(UnixPath.java:129) + at java.base/sun.nio.fs.UnixPath.(UnixPath.java:76) + at java.base/sun.nio.fs.UnixFileSystem.getPath(UnixFileSystem.java:313) + at java.base/java.nio.file.Path.of(Path.java:148) + at org.eclipse.core.runtime.IPath.toPath(IPath.java:556) + at org.eclipse.jdt.internal.core.ExternalFoldersManager.isExternalFolderPath(ExternalFoldersManager.java:156) + at org.eclipse.jdt.internal.core.JavaProject.addToResult(JavaProject.java:3268) + at org.eclipse.jdt.internal.core.JavaProject.resolveClasspath(JavaProject.java:3236) + at org.eclipse.jdt.internal.core.JavaProject.resolveClasspath(JavaProject.java:3099) + at org.eclipse.jdt.internal.core.ClasspathEntry.validateClasspath(ClasspathEntry.java:1883) + at org.eclipse.jdt.internal.core.SetClasspathOperation.verify(SetClasspathOperation.java:125) + at org.eclipse.jdt.internal.core.JavaModelOperation.runOperation(JavaModelOperation.java:810) + at org.eclipse.jdt.internal.core.JavaProject.setRawClasspath(JavaProject.java:3542) + at org.eclipse.jdt.internal.core.JavaProject.setRawClasspath(JavaProject.java:3502) + at org.eclipse.jdt.internal.core.JavaProject.setRawClasspath(JavaProject.java:3515) + at org.eclipse.jdt.internal.ui.wizards.buildpaths.BuildPathsBlock.flush(BuildPathsBlock.java:893) + at org.eclipse.jdt.internal.ui.wizards.buildpaths.BuildPathsBlock.configureJavaProject(BuildPathsBlock.java:719) + at org.eclipse.jdt.internal.ui.wizards.buildpaths.BuildPathsBlock.configureJavaProject(BuildPathsBlock.java:715) + at org.eclipse.jdt.internal.ui.preferences.BuildPathsPropertyPage.lambda$0(BuildPathsPropertyPage.java:220) + at org.eclipse.jdt.internal.core.BatchOperation.executeOperation(BatchOperation.java:41) + at org.eclipse.jdt.internal.core.JavaModelOperation.run(JavaModelOperation.java:751) + at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2505) + at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2533) + at org.eclipse.jdt.core.JavaCore.run(JavaCore.java:6173) + at org.eclipse.jdt.internal.ui.actions.WorkbenchRunnableAdapter.run(WorkbenchRunnableAdapter.java:108) + at org.eclipse.jdt.internal.ui.actions.WorkbenchRunnableAdapter$1.run(WorkbenchRunnableAdapter.java:121) + at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63) + +!ENTRY org.eclipse.ui 4 0 2026-08-17 23:18:25.553 +!MESSAGE Unhandled event loop exception +!STACK 0 +java.nio.file.InvalidPathException: Malformed input or input contains unmappable characters: /home/Kotama_Chio/Téléchargements/sqlite-jdbc-3.53.2.1.jar + at java.base/sun.nio.fs.UnixPath.encode(UnixPath.java:129) + at java.base/sun.nio.fs.UnixPath.(UnixPath.java:76) + at java.base/sun.nio.fs.UnixFileSystem.getPath(UnixFileSystem.java:313) + at java.base/java.nio.file.Path.of(Path.java:148) + at org.eclipse.core.runtime.IPath.toPath(IPath.java:556) + at org.eclipse.jdt.internal.core.ExternalFoldersManager.isExternalFolderPath(ExternalFoldersManager.java:156) + at org.eclipse.jdt.internal.core.JavaProject.addToResult(JavaProject.java:3268) + at org.eclipse.jdt.internal.core.JavaProject.resolveClasspath(JavaProject.java:3236) + at org.eclipse.jdt.internal.core.JavaProject.resolveClasspath(JavaProject.java:3099) + at org.eclipse.jdt.internal.core.ClasspathEntry.validateClasspath(ClasspathEntry.java:1883) + at org.eclipse.jdt.core.JavaConventions.validateClasspath(JavaConventions.java:778) + at org.eclipse.jdt.internal.ui.wizards.buildpaths.BuildPathsBlock.updateBuildPathStatus(BuildPathsBlock.java:696) + at org.eclipse.jdt.internal.ui.wizards.buildpaths.BuildPathsBlock.updateClassPathStatus(BuildPathsBlock.java:645) + at org.eclipse.jdt.internal.ui.wizards.buildpaths.BuildPathsBlock.buildPathDialogFieldChanged(BuildPathsBlock.java:574) + at org.eclipse.jdt.internal.ui.wizards.buildpaths.BuildPathsBlock$BuildPathAdapter.dialogFieldChanged(BuildPathsBlock.java:529) + at org.eclipse.jdt.internal.ui.wizards.dialogfields.DialogField.dialogFieldChanged(DialogField.java:78) + at org.eclipse.jdt.internal.ui.wizards.dialogfields.ListDialogField.dialogFieldChanged(ListDialogField.java:509) + at org.eclipse.jdt.internal.ui.wizards.dialogfields.CheckedListDialogField.dialogFieldChanged(CheckedListDialogField.java:119) + at org.eclipse.jdt.internal.ui.wizards.dialogfields.ListDialogField.setElements(ListDialogField.java:588) + at org.eclipse.jdt.internal.ui.wizards.buildpaths.LibrariesWorkbookPage.updateClasspathList(LibrariesWorkbookPage.java:1124) + at org.eclipse.jdt.internal.ui.wizards.buildpaths.LibrariesWorkbookPage.libaryPageDialogFieldChanged(LibrariesWorkbookPage.java:1085) + at org.eclipse.jdt.internal.ui.wizards.buildpaths.LibrariesWorkbookPage$LibrariesAdapter.dialogFieldChanged(LibrariesWorkbookPage.java:445) + at org.eclipse.jdt.internal.ui.wizards.dialogfields.DialogField.dialogFieldChanged(DialogField.java:78) + at org.eclipse.jdt.internal.ui.wizards.dialogfields.TreeListDialogField.dialogFieldChanged(TreeListDialogField.java:440) + at org.eclipse.jdt.internal.ui.wizards.dialogfields.TreeListDialogField.setElements(TreeListDialogField.java:526) + at org.eclipse.jdt.internal.ui.wizards.buildpaths.LibrariesWorkbookPage.libaryPageCustomButtonPressed(LibrariesWorkbookPage.java:536) + at org.eclipse.jdt.internal.ui.wizards.buildpaths.LibrariesWorkbookPage$LibrariesAdapter.customButtonPressed(LibrariesWorkbookPage.java:412) + at org.eclipse.jdt.internal.ui.wizards.dialogfields.TreeListDialogField.buttonPressed(TreeListDialogField.java:177) + at org.eclipse.jdt.internal.ui.wizards.dialogfields.TreeListDialogField.doButtonSelected(TreeListDialogField.java:412) + at org.eclipse.jdt.internal.ui.wizards.dialogfields.TreeListDialogField$2.widgetSelected(TreeListDialogField.java:373) + at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:290) + at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:91) + at org.eclipse.swt.widgets.Display.sendEvent(Display.java:5865) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1656) + at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:5080) + at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:4515) + at org.eclipse.jface.window.Window.runEventLoop(Window.java:819) + at org.eclipse.jface.window.Window.open(Window.java:799) + at org.eclipse.jdt.internal.ui.wizards.buildpaths.newsourcepage.ConfigureBuildPathAction.run(ConfigureBuildPathAction.java:87) + at org.eclipse.jface.action.Action.runWithEvent(Action.java:474) + at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:581) + at org.eclipse.jface.action.ActionContributionItem.lambda$4(ActionContributionItem.java:415) + at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:91) + at org.eclipse.swt.widgets.Display.sendEvent(Display.java:5865) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1656) + at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:5080) + at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:4515) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1160) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:339) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1051) + at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:153) + at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:684) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:339) + at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:583) + at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:173) + at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:193) + at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:219) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:149) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:115) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:467) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:298) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) + at java.base/java.lang.reflect.Method.invoke(Method.java:580) + at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:615) + at org.eclipse.equinox.launcher.Main.basicRun(Main.java:563) + at org.eclipse.equinox.launcher.Main.run(Main.java:1415) + at org.eclipse.equinox.launcher.Main.main(Main.java:1387) + +!ENTRY org.eclipse.core.jobs 4 2 2026-08-17 23:18:28.773 +!MESSAGE An internal error occurred during: "Setting build path". +!STACK 0 +java.nio.file.InvalidPathException: Malformed input or input contains unmappable characters: /home/Kotama_Chio/Téléchargements/sqlite-jdbc-3.53.2.1.jar + at java.base/sun.nio.fs.UnixPath.encode(UnixPath.java:129) + at java.base/sun.nio.fs.UnixPath.(UnixPath.java:76) + at java.base/sun.nio.fs.UnixFileSystem.getPath(UnixFileSystem.java:313) + at java.base/java.nio.file.Path.of(Path.java:148) + at org.eclipse.core.runtime.IPath.toPath(IPath.java:556) + at org.eclipse.jdt.internal.core.ExternalFoldersManager.isExternalFolderPath(ExternalFoldersManager.java:156) + at org.eclipse.jdt.internal.core.JavaProject.addToResult(JavaProject.java:3268) + at org.eclipse.jdt.internal.core.JavaProject.resolveClasspath(JavaProject.java:3236) + at org.eclipse.jdt.internal.core.JavaProject.resolveClasspath(JavaProject.java:3099) + at org.eclipse.jdt.internal.core.ClasspathEntry.validateClasspath(ClasspathEntry.java:1883) + at org.eclipse.jdt.internal.core.SetClasspathOperation.verify(SetClasspathOperation.java:125) + at org.eclipse.jdt.internal.core.JavaModelOperation.runOperation(JavaModelOperation.java:810) + at org.eclipse.jdt.internal.core.JavaProject.setRawClasspath(JavaProject.java:3542) + at org.eclipse.jdt.internal.core.JavaProject.setRawClasspath(JavaProject.java:3502) + at org.eclipse.jdt.internal.core.JavaProject.setRawClasspath(JavaProject.java:3515) + at org.eclipse.jdt.internal.ui.wizards.buildpaths.BuildPathsBlock.flush(BuildPathsBlock.java:893) + at org.eclipse.jdt.internal.ui.wizards.buildpaths.BuildPathsBlock.configureJavaProject(BuildPathsBlock.java:719) + at org.eclipse.jdt.internal.ui.wizards.buildpaths.BuildPathsBlock.configureJavaProject(BuildPathsBlock.java:715) + at org.eclipse.jdt.internal.ui.preferences.BuildPathsPropertyPage.lambda$0(BuildPathsPropertyPage.java:220) + at org.eclipse.jdt.internal.core.BatchOperation.executeOperation(BatchOperation.java:41) + at org.eclipse.jdt.internal.core.JavaModelOperation.run(JavaModelOperation.java:751) + at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2505) + at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2533) + at org.eclipse.jdt.core.JavaCore.run(JavaCore.java:6173) + at org.eclipse.jdt.internal.ui.actions.WorkbenchRunnableAdapter.run(WorkbenchRunnableAdapter.java:108) + at org.eclipse.jdt.internal.ui.actions.WorkbenchRunnableAdapter$1.run(WorkbenchRunnableAdapter.java:121) + at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63) + +!ENTRY org.eclipse.ui 4 0 2026-08-17 23:21:20.220 +!MESSAGE Unhandled event loop exception +!STACK 0 +java.nio.file.InvalidPathException: Malformed input or input contains unmappable characters: /home/Kotama_Chio/Téléchargements/sqlite-jdbc-3.53.2.1.jar + at java.base/sun.nio.fs.UnixPath.encode(UnixPath.java:129) + at java.base/sun.nio.fs.UnixPath.(UnixPath.java:76) + at java.base/sun.nio.fs.UnixFileSystem.getPath(UnixFileSystem.java:313) + at java.base/java.nio.file.Path.of(Path.java:148) + at org.eclipse.core.runtime.IPath.toPath(IPath.java:556) + at org.eclipse.jdt.internal.core.ExternalFoldersManager.isExternalFolderPath(ExternalFoldersManager.java:156) + at org.eclipse.jdt.internal.core.JavaProject.addToResult(JavaProject.java:3268) + at org.eclipse.jdt.internal.core.JavaProject.resolveClasspath(JavaProject.java:3236) + at org.eclipse.jdt.internal.core.JavaProject.resolveClasspath(JavaProject.java:3099) + at org.eclipse.jdt.internal.core.ClasspathEntry.validateClasspath(ClasspathEntry.java:1883) + at org.eclipse.jdt.core.JavaConventions.validateClasspath(JavaConventions.java:778) + at org.eclipse.jdt.internal.ui.wizards.buildpaths.BuildPathsBlock.updateBuildPathStatus(BuildPathsBlock.java:696) + at org.eclipse.jdt.internal.ui.wizards.buildpaths.BuildPathsBlock.updateClassPathStatus(BuildPathsBlock.java:645) + at org.eclipse.jdt.internal.ui.wizards.buildpaths.BuildPathsBlock.buildPathDialogFieldChanged(BuildPathsBlock.java:574) + at org.eclipse.jdt.internal.ui.wizards.buildpaths.BuildPathsBlock$BuildPathAdapter.dialogFieldChanged(BuildPathsBlock.java:529) + at org.eclipse.jdt.internal.ui.wizards.dialogfields.DialogField.dialogFieldChanged(DialogField.java:78) + at org.eclipse.jdt.internal.ui.wizards.dialogfields.ListDialogField.dialogFieldChanged(ListDialogField.java:509) + at org.eclipse.jdt.internal.ui.wizards.dialogfields.CheckedListDialogField.dialogFieldChanged(CheckedListDialogField.java:119) + at org.eclipse.jdt.internal.ui.wizards.dialogfields.ListDialogField.setElements(ListDialogField.java:588) + at org.eclipse.jdt.internal.ui.wizards.buildpaths.LibrariesWorkbookPage.updateClasspathList(LibrariesWorkbookPage.java:1124) + at org.eclipse.jdt.internal.ui.wizards.buildpaths.LibrariesWorkbookPage.libaryPageDialogFieldChanged(LibrariesWorkbookPage.java:1085) + at org.eclipse.jdt.internal.ui.wizards.buildpaths.LibrariesWorkbookPage$LibrariesAdapter.dialogFieldChanged(LibrariesWorkbookPage.java:445) + at org.eclipse.jdt.internal.ui.wizards.dialogfields.DialogField.dialogFieldChanged(DialogField.java:78) + at org.eclipse.jdt.internal.ui.wizards.dialogfields.TreeListDialogField.dialogFieldChanged(TreeListDialogField.java:440) + at org.eclipse.jdt.internal.ui.wizards.dialogfields.TreeListDialogField.setElements(TreeListDialogField.java:526) + at org.eclipse.jdt.internal.ui.wizards.buildpaths.LibrariesWorkbookPage.libaryPageCustomButtonPressed(LibrariesWorkbookPage.java:536) + at org.eclipse.jdt.internal.ui.wizards.buildpaths.LibrariesWorkbookPage$LibrariesAdapter.customButtonPressed(LibrariesWorkbookPage.java:412) + at org.eclipse.jdt.internal.ui.wizards.dialogfields.TreeListDialogField.buttonPressed(TreeListDialogField.java:177) + at org.eclipse.jdt.internal.ui.wizards.dialogfields.TreeListDialogField.doButtonSelected(TreeListDialogField.java:412) + at org.eclipse.jdt.internal.ui.wizards.dialogfields.TreeListDialogField$2.widgetSelected(TreeListDialogField.java:373) + at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:290) + at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:91) + at org.eclipse.swt.widgets.Display.sendEvent(Display.java:5865) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1656) + at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:5080) + at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:4515) + at org.eclipse.jface.window.Window.runEventLoop(Window.java:819) + at org.eclipse.jface.window.Window.open(Window.java:799) + at org.eclipse.jdt.internal.ui.wizards.buildpaths.newsourcepage.ConfigureBuildPathAction.run(ConfigureBuildPathAction.java:87) + at org.eclipse.jface.action.Action.runWithEvent(Action.java:474) + at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:581) + at org.eclipse.jface.action.ActionContributionItem.lambda$4(ActionContributionItem.java:415) + at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:91) + at org.eclipse.swt.widgets.Display.sendEvent(Display.java:5865) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1656) + at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:5080) + at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:4515) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1160) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:339) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1051) + at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:153) + at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:684) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:339) + at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:583) + at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:173) + at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:193) + at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:219) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:149) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:115) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:467) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:298) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) + at java.base/java.lang.reflect.Method.invoke(Method.java:580) + at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:615) + at org.eclipse.equinox.launcher.Main.basicRun(Main.java:563) + at org.eclipse.equinox.launcher.Main.run(Main.java:1415) + at org.eclipse.equinox.launcher.Main.main(Main.java:1387) + +!ENTRY org.eclipse.core.jobs 4 2 2026-08-17 23:21:22.730 +!MESSAGE An internal error occurred during: "Setting build path". +!STACK 0 +java.nio.file.InvalidPathException: Malformed input or input contains unmappable characters: /home/Kotama_Chio/Téléchargements/sqlite-jdbc-3.53.2.1.jar + at java.base/sun.nio.fs.UnixPath.encode(UnixPath.java:129) + at java.base/sun.nio.fs.UnixPath.(UnixPath.java:76) + at java.base/sun.nio.fs.UnixFileSystem.getPath(UnixFileSystem.java:313) + at java.base/java.nio.file.Path.of(Path.java:148) + at org.eclipse.core.runtime.IPath.toPath(IPath.java:556) + at org.eclipse.jdt.internal.core.ExternalFoldersManager.isExternalFolderPath(ExternalFoldersManager.java:156) + at org.eclipse.jdt.internal.core.JavaProject.addToResult(JavaProject.java:3268) + at org.eclipse.jdt.internal.core.JavaProject.resolveClasspath(JavaProject.java:3236) + at org.eclipse.jdt.internal.core.JavaProject.resolveClasspath(JavaProject.java:3099) + at org.eclipse.jdt.internal.core.ClasspathEntry.validateClasspath(ClasspathEntry.java:1883) + at org.eclipse.jdt.internal.core.SetClasspathOperation.verify(SetClasspathOperation.java:125) + at org.eclipse.jdt.internal.core.JavaModelOperation.runOperation(JavaModelOperation.java:810) + at org.eclipse.jdt.internal.core.JavaProject.setRawClasspath(JavaProject.java:3542) + at org.eclipse.jdt.internal.core.JavaProject.setRawClasspath(JavaProject.java:3502) + at org.eclipse.jdt.internal.core.JavaProject.setRawClasspath(JavaProject.java:3515) + at org.eclipse.jdt.internal.ui.wizards.buildpaths.BuildPathsBlock.flush(BuildPathsBlock.java:893) + at org.eclipse.jdt.internal.ui.wizards.buildpaths.BuildPathsBlock.configureJavaProject(BuildPathsBlock.java:719) + at org.eclipse.jdt.internal.ui.wizards.buildpaths.BuildPathsBlock.configureJavaProject(BuildPathsBlock.java:715) + at org.eclipse.jdt.internal.ui.preferences.BuildPathsPropertyPage.lambda$0(BuildPathsPropertyPage.java:220) + at org.eclipse.jdt.internal.core.BatchOperation.executeOperation(BatchOperation.java:41) + at org.eclipse.jdt.internal.core.JavaModelOperation.run(JavaModelOperation.java:751) + at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2505) + at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2533) + at org.eclipse.jdt.core.JavaCore.run(JavaCore.java:6173) + at org.eclipse.jdt.internal.ui.actions.WorkbenchRunnableAdapter.run(WorkbenchRunnableAdapter.java:108) + at org.eclipse.jdt.internal.ui.actions.WorkbenchRunnableAdapter$1.run(WorkbenchRunnableAdapter.java:121) + at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63) + +!ENTRY org.eclipse.ui 4 0 2026-08-17 23:26:11.104 +!MESSAGE Unhandled event loop exception +!STACK 0 +java.nio.file.InvalidPathException: Malformed input or input contains unmappable characters: /home/Kotama_Chio/Téléchargements/sqlite-jdbc-3.53.2.1.jar + at java.base/sun.nio.fs.UnixPath.encode(UnixPath.java:129) + at java.base/sun.nio.fs.UnixPath.(UnixPath.java:76) + at java.base/sun.nio.fs.UnixFileSystem.getPath(UnixFileSystem.java:313) + at java.base/java.nio.file.Path.of(Path.java:148) + at org.eclipse.core.runtime.IPath.toPath(IPath.java:556) + at org.eclipse.jdt.internal.core.ExternalFoldersManager.isExternalFolderPath(ExternalFoldersManager.java:156) + at org.eclipse.jdt.internal.core.JavaProject.addToResult(JavaProject.java:3268) + at org.eclipse.jdt.internal.core.JavaProject.resolveClasspath(JavaProject.java:3236) + at org.eclipse.jdt.internal.core.JavaProject.resolveClasspath(JavaProject.java:3099) + at org.eclipse.jdt.internal.core.ClasspathEntry.validateClasspath(ClasspathEntry.java:1883) + at org.eclipse.jdt.core.JavaConventions.validateClasspath(JavaConventions.java:778) + at org.eclipse.jdt.internal.ui.wizards.buildpaths.BuildPathsBlock.updateBuildPathStatus(BuildPathsBlock.java:696) + at org.eclipse.jdt.internal.ui.wizards.buildpaths.BuildPathsBlock.updateClassPathStatus(BuildPathsBlock.java:645) + at org.eclipse.jdt.internal.ui.wizards.buildpaths.BuildPathsBlock.buildPathDialogFieldChanged(BuildPathsBlock.java:574) + at org.eclipse.jdt.internal.ui.wizards.buildpaths.BuildPathsBlock$BuildPathAdapter.dialogFieldChanged(BuildPathsBlock.java:529) + at org.eclipse.jdt.internal.ui.wizards.dialogfields.DialogField.dialogFieldChanged(DialogField.java:78) + at org.eclipse.jdt.internal.ui.wizards.dialogfields.ListDialogField.dialogFieldChanged(ListDialogField.java:509) + at org.eclipse.jdt.internal.ui.wizards.dialogfields.CheckedListDialogField.dialogFieldChanged(CheckedListDialogField.java:119) + at org.eclipse.jdt.internal.ui.wizards.dialogfields.ListDialogField.setElements(ListDialogField.java:588) + at org.eclipse.jdt.internal.ui.wizards.buildpaths.LibrariesWorkbookPage.updateClasspathList(LibrariesWorkbookPage.java:1124) + at org.eclipse.jdt.internal.ui.wizards.buildpaths.LibrariesWorkbookPage.libaryPageDialogFieldChanged(LibrariesWorkbookPage.java:1085) + at org.eclipse.jdt.internal.ui.wizards.buildpaths.LibrariesWorkbookPage$LibrariesAdapter.dialogFieldChanged(LibrariesWorkbookPage.java:445) + at org.eclipse.jdt.internal.ui.wizards.dialogfields.DialogField.dialogFieldChanged(DialogField.java:78) + at org.eclipse.jdt.internal.ui.wizards.dialogfields.TreeListDialogField.dialogFieldChanged(TreeListDialogField.java:440) + at org.eclipse.jdt.internal.ui.wizards.dialogfields.TreeListDialogField.setElements(TreeListDialogField.java:526) + at org.eclipse.jdt.internal.ui.wizards.buildpaths.LibrariesWorkbookPage.libaryPageCustomButtonPressed(LibrariesWorkbookPage.java:536) + at org.eclipse.jdt.internal.ui.wizards.buildpaths.LibrariesWorkbookPage$LibrariesAdapter.customButtonPressed(LibrariesWorkbookPage.java:412) + at org.eclipse.jdt.internal.ui.wizards.dialogfields.TreeListDialogField.buttonPressed(TreeListDialogField.java:177) + at org.eclipse.jdt.internal.ui.wizards.dialogfields.TreeListDialogField.doButtonSelected(TreeListDialogField.java:412) + at org.eclipse.jdt.internal.ui.wizards.dialogfields.TreeListDialogField$2.widgetSelected(TreeListDialogField.java:373) + at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:290) + at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:91) + at org.eclipse.swt.widgets.Display.sendEvent(Display.java:5865) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1656) + at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:5080) + at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:4515) + at org.eclipse.jface.window.Window.runEventLoop(Window.java:819) + at org.eclipse.jface.window.Window.open(Window.java:799) + at org.eclipse.jdt.internal.ui.wizards.buildpaths.newsourcepage.ConfigureBuildPathAction.run(ConfigureBuildPathAction.java:87) + at org.eclipse.jface.action.Action.runWithEvent(Action.java:474) + at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:581) + at org.eclipse.jface.action.ActionContributionItem.lambda$4(ActionContributionItem.java:415) + at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:91) + at org.eclipse.swt.widgets.Display.sendEvent(Display.java:5865) + at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1656) + at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:5080) + at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:4515) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1160) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:339) + at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1051) + at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:153) + at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:684) + at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:339) + at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:583) + at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:173) + at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:193) + at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:219) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:149) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:115) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:467) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:298) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) + at java.base/java.lang.reflect.Method.invoke(Method.java:580) + at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:615) + at org.eclipse.equinox.launcher.Main.basicRun(Main.java:563) + at org.eclipse.equinox.launcher.Main.run(Main.java:1415) + at org.eclipse.equinox.launcher.Main.main(Main.java:1387) + +!ENTRY org.eclipse.core.jobs 4 2 2026-08-17 23:26:12.202 +!MESSAGE An internal error occurred during: "Setting build path". +!STACK 0 +java.nio.file.InvalidPathException: Malformed input or input contains unmappable characters: /home/Kotama_Chio/Téléchargements/sqlite-jdbc-3.53.2.1.jar + at java.base/sun.nio.fs.UnixPath.encode(UnixPath.java:129) + at java.base/sun.nio.fs.UnixPath.(UnixPath.java:76) + at java.base/sun.nio.fs.UnixFileSystem.getPath(UnixFileSystem.java:313) + at java.base/java.nio.file.Path.of(Path.java:148) + at org.eclipse.core.runtime.IPath.toPath(IPath.java:556) + at org.eclipse.jdt.internal.core.ExternalFoldersManager.isExternalFolderPath(ExternalFoldersManager.java:156) + at org.eclipse.jdt.internal.core.JavaProject.addToResult(JavaProject.java:3268) + at org.eclipse.jdt.internal.core.JavaProject.resolveClasspath(JavaProject.java:3236) + at org.eclipse.jdt.internal.core.JavaProject.resolveClasspath(JavaProject.java:3099) + at org.eclipse.jdt.internal.core.ClasspathEntry.validateClasspath(ClasspathEntry.java:1883) + at org.eclipse.jdt.internal.core.SetClasspathOperation.verify(SetClasspathOperation.java:125) + at org.eclipse.jdt.internal.core.JavaModelOperation.runOperation(JavaModelOperation.java:810) + at org.eclipse.jdt.internal.core.JavaProject.setRawClasspath(JavaProject.java:3542) + at org.eclipse.jdt.internal.core.JavaProject.setRawClasspath(JavaProject.java:3502) + at org.eclipse.jdt.internal.core.JavaProject.setRawClasspath(JavaProject.java:3515) + at org.eclipse.jdt.internal.ui.wizards.buildpaths.BuildPathsBlock.flush(BuildPathsBlock.java:893) + at org.eclipse.jdt.internal.ui.wizards.buildpaths.BuildPathsBlock.configureJavaProject(BuildPathsBlock.java:719) + at org.eclipse.jdt.internal.ui.wizards.buildpaths.BuildPathsBlock.configureJavaProject(BuildPathsBlock.java:715) + at org.eclipse.jdt.internal.ui.preferences.BuildPathsPropertyPage.lambda$0(BuildPathsPropertyPage.java:220) + at org.eclipse.jdt.internal.core.BatchOperation.executeOperation(BatchOperation.java:41) + at org.eclipse.jdt.internal.core.JavaModelOperation.run(JavaModelOperation.java:751) + at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2505) + at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2533) + at org.eclipse.jdt.core.JavaCore.run(JavaCore.java:6173) + at org.eclipse.jdt.internal.ui.actions.WorkbenchRunnableAdapter.run(WorkbenchRunnableAdapter.java:108) + at org.eclipse.jdt.internal.ui.actions.WorkbenchRunnableAdapter$1.run(WorkbenchRunnableAdapter.java:121) + at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63) + +!ENTRY org.eclipse.core.resources 2 10035 2026-08-18 00:17:38.340 +!MESSAGE The workspace will exit with unsaved changes in this session. +!SESSION 2026-08-18 21:12:40.529 ----------------------------------------------- +eclipse.buildId=4.40.0.20260604-0652 +java.version=21.0.11 +java.vendor=Eclipse Adoptium +BootLoader constants: OS=linux, ARCH=x86_64, WS=gtk, NL=en_US +Framework arguments: -product org.eclipse.epp.package.java.product +Command-line arguments: -os linux -ws gtk -arch x86_64 -product org.eclipse.epp.package.java.product + +!ENTRY ch.qos.logback.classic 1 0 2026-08-18 21:12:45.334 +!MESSAGE Activated before the state location was initialized. Retry after the state location is initialized. + +!ENTRY org.eclipse.core.resources 2 10035 2026-08-18 21:12:59.444 +!MESSAGE The workspace exited with unsaved changes in the previous session; refreshing workspace to recover changes. + +!ENTRY ch.qos.logback.classic 1 0 2026-08-18 21:12:59.918 +!MESSAGE Logback config file: /home/Kotama_Chio/Musique/SillyBlahaj.org/Java/.metadata/.plugins/org.eclipse.m2e.logback/logback.2.7.101.20251017-1242.xml +!SESSION 2026-08-19 12:16:26.652 ----------------------------------------------- +eclipse.buildId=4.40.0.20260604-0652 +java.version=21.0.11 +java.vendor=Eclipse Adoptium +BootLoader constants: OS=linux, ARCH=x86_64, WS=gtk, NL=en_US +Framework arguments: -product org.eclipse.epp.package.java.product +Command-line arguments: -os linux -ws gtk -arch x86_64 -product org.eclipse.epp.package.java.product + +!ENTRY ch.qos.logback.classic 1 0 2026-08-19 12:16:29.985 +!MESSAGE Activated before the state location was initialized. Retry after the state location is initialized. + +!ENTRY ch.qos.logback.classic 1 0 2026-08-19 12:16:37.457 +!MESSAGE Logback config file: /home/Kotama_Chio/Musique/SillyBlahaj.org/Java/.metadata/.plugins/org.eclipse.m2e.logback/logback.2.7.101.20251017-1242.xml +!SESSION 2026-08-20 12:29:12.395 ----------------------------------------------- +eclipse.buildId=4.40.0.20260604-0652 +java.version=21.0.11 +java.vendor=Eclipse Adoptium +BootLoader constants: OS=linux, ARCH=x86_64, WS=gtk, NL=en_US +Framework arguments: -product org.eclipse.epp.package.java.product +Command-line arguments: -os linux -ws gtk -arch x86_64 -product org.eclipse.epp.package.java.product + +!ENTRY ch.qos.logback.classic 1 0 2026-08-20 12:29:17.070 +!MESSAGE Activated before the state location was initialized. Retry after the state location is initialized. + +!ENTRY ch.qos.logback.classic 1 0 2026-08-20 12:29:20.528 +!MESSAGE Logback config file: /home/Kotama_Chio/Musique/SillyBlahaj.org/Java/.metadata/.plugins/org.eclipse.m2e.logback/logback.2.7.101.20251017-1242.xml +!SESSION 2026-08-21 20:50:00.387 ----------------------------------------------- +eclipse.buildId=4.40.0.20260604-0652 +java.version=21.0.11 +java.vendor=Eclipse Adoptium +BootLoader constants: OS=linux, ARCH=x86_64, WS=gtk, NL=en_US +Framework arguments: -product org.eclipse.epp.package.java.product +Command-line arguments: -os linux -ws gtk -arch x86_64 -product org.eclipse.epp.package.java.product + +!ENTRY ch.qos.logback.classic 1 0 2026-08-21 20:50:05.274 +!MESSAGE Activated before the state location was initialized. Retry after the state location is initialized. + +!ENTRY ch.qos.logback.classic 1 0 2026-08-21 20:50:08.784 +!MESSAGE Logback config file: /home/Kotama_Chio/Musique/SillyBlahaj.org/Java/.metadata/.plugins/org.eclipse.m2e.logback/logback.2.7.101.20251017-1242.xml +!SESSION 2026-08-23 17:30:43.739 ----------------------------------------------- +eclipse.buildId=4.40.0.20260604-0652 +java.version=21.0.11 +java.vendor=Eclipse Adoptium +BootLoader constants: OS=linux, ARCH=x86_64, WS=gtk, NL=en_US +Framework arguments: -product org.eclipse.epp.package.java.product +Command-line arguments: -os linux -ws gtk -arch x86_64 -product org.eclipse.epp.package.java.product + +!ENTRY ch.qos.logback.classic 1 0 2026-08-23 17:30:48.086 +!MESSAGE Activated before the state location was initialized. Retry after the state location is initialized. + +!ENTRY ch.qos.logback.classic 1 0 2026-08-23 17:30:53.099 +!MESSAGE Logback config file: /home/Kotama_Chio/Musique/SillyBlahaj.org/Java/.metadata/.plugins/org.eclipse.m2e.logback/logback.2.7.101.20251017-1242.xml +!SESSION 2026-08-23 22:16:26.860 ----------------------------------------------- +eclipse.buildId=4.40.0.20260604-0652 +java.version=21.0.11 +java.vendor=Eclipse Adoptium +BootLoader constants: OS=linux, ARCH=x86_64, WS=gtk, NL=en_US +Framework arguments: -product org.eclipse.epp.package.java.product +Command-line arguments: -os linux -ws gtk -arch x86_64 -product org.eclipse.epp.package.java.product + +!ENTRY ch.qos.logback.classic 1 0 2026-08-23 22:16:30.577 +!MESSAGE Activated before the state location was initialized. Retry after the state location is initialized. + +!ENTRY ch.qos.logback.classic 1 0 2026-08-23 22:16:33.590 +!MESSAGE Logback config file: /home/Kotama_Chio/Musique/SillyBlahaj.org/Java/.metadata/.plugins/org.eclipse.m2e.logback/logback.2.7.101.20251017-1242.xml +!SESSION 2026-08-23 23:32:54.559 ----------------------------------------------- +eclipse.buildId=4.40.0.20260604-0652 +java.version=21.0.11 +java.vendor=Eclipse Adoptium +BootLoader constants: OS=linux, ARCH=x86_64, WS=gtk, NL=en_US +Framework arguments: -product org.eclipse.epp.package.java.product +Command-line arguments: -os linux -ws gtk -arch x86_64 -product org.eclipse.epp.package.java.product + +!ENTRY ch.qos.logback.classic 1 0 2026-08-23 23:32:58.120 +!MESSAGE Activated before the state location was initialized. Retry after the state location is initialized. + +!ENTRY ch.qos.logback.classic 1 0 2026-08-23 23:33:00.579 +!MESSAGE Logback config file: /home/Kotama_Chio/Musique/SillyBlahaj.org/Java/.metadata/.plugins/org.eclipse.m2e.logback/logback.2.7.101.20251017-1242.xml +!SESSION 2026-08-24 20:42:20.718 ----------------------------------------------- +eclipse.buildId=4.40.0.20260604-0652 +java.version=21.0.11 +java.vendor=Eclipse Adoptium +BootLoader constants: OS=linux, ARCH=x86_64, WS=gtk, NL=en_US +Framework arguments: -product org.eclipse.epp.package.java.product +Command-line arguments: -os linux -ws gtk -arch x86_64 -product org.eclipse.epp.package.java.product + +!ENTRY ch.qos.logback.classic 1 0 2026-08-24 20:42:24.985 +!MESSAGE Activated before the state location was initialized. Retry after the state location is initialized. + +!ENTRY ch.qos.logback.classic 1 0 2026-08-24 20:42:27.996 +!MESSAGE Logback config file: /home/Kotama_Chio/Musique/SillyBlahaj.org/Java/.metadata/.plugins/org.eclipse.m2e.logback/logback.2.7.101.20251017-1242.xml +!SESSION 2026-08-25 20:25:14.247 ----------------------------------------------- +eclipse.buildId=4.40.0.20260604-0652 +java.version=21.0.11 +java.vendor=Eclipse Adoptium +BootLoader constants: OS=linux, ARCH=x86_64, WS=gtk, NL=en_US +Framework arguments: -product org.eclipse.epp.package.java.product +Command-line arguments: -os linux -ws gtk -arch x86_64 -product org.eclipse.epp.package.java.product + +!ENTRY ch.qos.logback.classic 1 0 2026-08-25 20:25:18.475 +!MESSAGE Activated before the state location was initialized. Retry after the state location is initialized. + +!ENTRY ch.qos.logback.classic 1 0 2026-08-25 20:25:22.084 +!MESSAGE Logback config file: /home/Kotama_Chio/Musique/SillyBlahaj.org/Java/.metadata/.plugins/org.eclipse.m2e.logback/logback.2.7.101.20251017-1242.xml +!SESSION 2026-08-27 20:19:06.859 ----------------------------------------------- +eclipse.buildId=4.40.0.20260604-0652 +java.version=21.0.11 +java.vendor=Eclipse Adoptium +BootLoader constants: OS=linux, ARCH=x86_64, WS=gtk, NL=en_US +Framework arguments: -product org.eclipse.epp.package.java.product +Command-line arguments: -os linux -ws gtk -arch x86_64 -product org.eclipse.epp.package.java.product + +!ENTRY ch.qos.logback.classic 1 0 2026-08-27 20:19:11.465 +!MESSAGE Activated before the state location was initialized. Retry after the state location is initialized. + +!ENTRY ch.qos.logback.classic 1 0 2026-08-27 20:19:16.532 +!MESSAGE Logback config file: /home/Kotama_Chio/Musique/SillyBlahaj.org/Java/.metadata/.plugins/org.eclipse.m2e.logback/logback.2.7.101.20251017-1242.xml +!SESSION 2026-08-28 21:21:24.947 ----------------------------------------------- +eclipse.buildId=4.40.0.20260604-0652 +java.version=21.0.11 +java.vendor=Eclipse Adoptium +BootLoader constants: OS=linux, ARCH=x86_64, WS=gtk, NL=en_US +Framework arguments: -product org.eclipse.epp.package.java.product +Command-line arguments: -os linux -ws gtk -arch x86_64 -product org.eclipse.epp.package.java.product + +!ENTRY ch.qos.logback.classic 1 0 2026-08-28 21:21:29.267 +!MESSAGE Activated before the state location was initialized. Retry after the state location is initialized. + +!ENTRY ch.qos.logback.classic 1 0 2026-08-28 21:24:16.639 +!MESSAGE Logback config file: /home/Kotama_Chio/Musique/SillyBlahaj.org/Java/.metadata/.plugins/org.eclipse.m2e.logback/logback.2.7.101.20251017-1242.xml +!SESSION 2026-08-29 13:04:14.476 ----------------------------------------------- +eclipse.buildId=4.40.0.20260604-0652 +java.version=21.0.11 +java.vendor=Eclipse Adoptium +BootLoader constants: OS=linux, ARCH=x86_64, WS=gtk, NL=en_US +Framework arguments: -product org.eclipse.epp.package.java.product +Command-line arguments: -os linux -ws gtk -arch x86_64 -product org.eclipse.epp.package.java.product + +!ENTRY ch.qos.logback.classic 1 0 2026-08-29 13:04:18.283 +!MESSAGE Activated before the state location was initialized. Retry after the state location is initialized. + +!ENTRY ch.qos.logback.classic 1 0 2026-08-29 13:04:21.138 +!MESSAGE Logback config file: /home/Kotama_Chio/Musique/SillyBlahaj.org/Java/.metadata/.plugins/org.eclipse.m2e.logback/logback.2.7.101.20251017-1242.xml +!SESSION 2026-08-29 13:08:06.937 ----------------------------------------------- +eclipse.buildId=4.40.0.20260604-0652 +java.version=21.0.11 +java.vendor=Eclipse Adoptium +BootLoader constants: OS=linux, ARCH=x86_64, WS=gtk, NL=en_US +Framework arguments: -product org.eclipse.epp.package.java.product +Command-line arguments: -os linux -ws gtk -arch x86_64 -product org.eclipse.epp.package.java.product + +!ENTRY ch.qos.logback.classic 1 0 2026-08-29 13:08:10.278 +!MESSAGE Activated before the state location was initialized. Retry after the state location is initialized. + +!ENTRY org.eclipse.core.resources 4 567 2026-08-29 13:08:22.540 +!MESSAGE Workspace restored, but some problems occurred. +!SUBENTRY 1 org.eclipse.core.resources 4 567 2026-08-29 13:08:22.540 +!MESSAGE Could not read metadata for 'SillyBlahaj.org'. +!STACK 1 +org.eclipse.core.internal.resources.ResourceException(/SillyBlahaj.org)[567]: java.lang.Exception: The project description file (.project) for 'SillyBlahaj.org' is missing. This file contains important information about the project. The project will not function properly until this file is restored. + at org.eclipse.core.internal.resources.ResourceException.provideStackTrace(ResourceException.java:42) + at org.eclipse.core.internal.resources.ResourceException.(ResourceException.java:38) + at org.eclipse.core.internal.localstore.FileSystemResourceManager.read(FileSystemResourceManager.java:1021) + at org.eclipse.core.internal.resources.SaveManager.restoreMetaInfo(SaveManager.java:1004) + at org.eclipse.core.internal.resources.SaveManager.restoreMetaInfo(SaveManager.java:983) + at org.eclipse.core.internal.resources.SaveManager.restore(SaveManager.java:825) + at org.eclipse.core.internal.resources.SaveManager.startup(SaveManager.java:1689) + at org.eclipse.core.internal.resources.Workspace.startup(Workspace.java:2677) + at org.eclipse.core.internal.resources.Workspace.open(Workspace.java:2369) + at org.eclipse.core.resources.ResourcesPlugin$WorkspaceInitCustomizer.addingService(ResourcesPlugin.java:591) + at org.eclipse.core.resources.ResourcesPlugin$WorkspaceInitCustomizer.addingService(ResourcesPlugin.java:1) + at org.osgi.util.tracker.ServiceTracker$Tracked.customizerAdding(ServiceTracker.java:947) + at org.osgi.util.tracker.ServiceTracker$Tracked.customizerAdding(ServiceTracker.java:1) + at org.osgi.util.tracker.AbstractTracked.trackAdding(AbstractTracked.java:257) + at org.osgi.util.tracker.AbstractTracked.trackInitial(AbstractTracked.java:184) + at org.osgi.util.tracker.ServiceTracker.open(ServiceTracker.java:324) + at org.osgi.util.tracker.ServiceTracker.open(ServiceTracker.java:267) + at org.eclipse.core.resources.ResourcesPlugin.start(ResourcesPlugin.java:565) + at org.eclipse.osgi.internal.framework.BundleContextImpl$2.run(BundleContextImpl.java:838) + at org.eclipse.osgi.internal.framework.BundleContextImpl$2.run(BundleContextImpl.java:1) + at java.base/java.security.AccessController.doPrivileged(AccessController.java:571) + at org.eclipse.osgi.internal.framework.BundleContextImpl.startActivator(BundleContextImpl.java:830) + at org.eclipse.osgi.internal.framework.BundleContextImpl.start(BundleContextImpl.java:780) + at org.eclipse.osgi.internal.framework.EquinoxBundle.startWorker0(EquinoxBundle.java:1082) + at org.eclipse.osgi.internal.framework.EquinoxBundle$EquinoxModule.startWorker(EquinoxBundle.java:394) + at org.eclipse.osgi.container.Module.doStart(Module.java:643) + at org.eclipse.osgi.container.Module.start(Module.java:500) + at org.eclipse.osgi.framework.util.SecureAction.start(SecureAction.java:528) + at org.eclipse.osgi.internal.hooks.EclipseLazyStarter.postFindLocalClass(EclipseLazyStarter.java:122) + at org.eclipse.osgi.internal.loader.classpath.ClasspathManager.findLocalClass(ClasspathManager.java:620) + at org.eclipse.osgi.internal.loader.ModuleClassLoader.findLocalClass(ModuleClassLoader.java:353) + at org.eclipse.osgi.internal.loader.BundleLoader.findLocalClass(BundleLoader.java:418) + at org.eclipse.osgi.internal.loader.sources.SingleSourcePackage.loadClass(SingleSourcePackage.java:41) + at org.eclipse.osgi.internal.loader.BundleLoader.findClass0(BundleLoader.java:523) + at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:439) + at org.eclipse.osgi.internal.loader.ModuleClassLoader.loadClass(ModuleClassLoader.java:195) + at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:526) + at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:194) + at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:219) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:149) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:115) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:467) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:298) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) + at java.base/java.lang.reflect.Method.invoke(Method.java:580) + at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:615) + at org.eclipse.equinox.launcher.Main.basicRun(Main.java:563) + at org.eclipse.equinox.launcher.Main.run(Main.java:1415) + at org.eclipse.equinox.launcher.Main.main(Main.java:1387) +!SUBENTRY 2 org.eclipse.core.resources 4 567 2026-08-29 13:08:22.543 +!MESSAGE The project description file (.project) for 'SillyBlahaj.org' is missing. This file contains important information about the project. The project will not function properly until this file is restored. +!STACK 0 +java.lang.Exception: The project description file (.project) for 'SillyBlahaj.org' is missing. This file contains important information about the project. The project will not function properly until this file is restored. + at org.eclipse.core.internal.resources.ResourceException.provideStackTrace(ResourceException.java:42) + at org.eclipse.core.internal.resources.ResourceException.(ResourceException.java:38) + at org.eclipse.core.internal.localstore.FileSystemResourceManager.read(FileSystemResourceManager.java:1021) + at org.eclipse.core.internal.resources.SaveManager.restoreMetaInfo(SaveManager.java:1004) + at org.eclipse.core.internal.resources.SaveManager.restoreMetaInfo(SaveManager.java:983) + at org.eclipse.core.internal.resources.SaveManager.restore(SaveManager.java:825) + at org.eclipse.core.internal.resources.SaveManager.startup(SaveManager.java:1689) + at org.eclipse.core.internal.resources.Workspace.startup(Workspace.java:2677) + at org.eclipse.core.internal.resources.Workspace.open(Workspace.java:2369) + at org.eclipse.core.resources.ResourcesPlugin$WorkspaceInitCustomizer.addingService(ResourcesPlugin.java:591) + at org.eclipse.core.resources.ResourcesPlugin$WorkspaceInitCustomizer.addingService(ResourcesPlugin.java:1) + at org.osgi.util.tracker.ServiceTracker$Tracked.customizerAdding(ServiceTracker.java:947) + at org.osgi.util.tracker.ServiceTracker$Tracked.customizerAdding(ServiceTracker.java:1) + at org.osgi.util.tracker.AbstractTracked.trackAdding(AbstractTracked.java:257) + at org.osgi.util.tracker.AbstractTracked.trackInitial(AbstractTracked.java:184) + at org.osgi.util.tracker.ServiceTracker.open(ServiceTracker.java:324) + at org.osgi.util.tracker.ServiceTracker.open(ServiceTracker.java:267) + at org.eclipse.core.resources.ResourcesPlugin.start(ResourcesPlugin.java:565) + at org.eclipse.osgi.internal.framework.BundleContextImpl$2.run(BundleContextImpl.java:838) + at org.eclipse.osgi.internal.framework.BundleContextImpl$2.run(BundleContextImpl.java:1) + at java.base/java.security.AccessController.doPrivileged(AccessController.java:571) + at org.eclipse.osgi.internal.framework.BundleContextImpl.startActivator(BundleContextImpl.java:830) + at org.eclipse.osgi.internal.framework.BundleContextImpl.start(BundleContextImpl.java:780) + at org.eclipse.osgi.internal.framework.EquinoxBundle.startWorker0(EquinoxBundle.java:1082) + at org.eclipse.osgi.internal.framework.EquinoxBundle$EquinoxModule.startWorker(EquinoxBundle.java:394) + at org.eclipse.osgi.container.Module.doStart(Module.java:643) + at org.eclipse.osgi.container.Module.start(Module.java:500) + at org.eclipse.osgi.framework.util.SecureAction.start(SecureAction.java:528) + at org.eclipse.osgi.internal.hooks.EclipseLazyStarter.postFindLocalClass(EclipseLazyStarter.java:122) + at org.eclipse.osgi.internal.loader.classpath.ClasspathManager.findLocalClass(ClasspathManager.java:620) + at org.eclipse.osgi.internal.loader.ModuleClassLoader.findLocalClass(ModuleClassLoader.java:353) + at org.eclipse.osgi.internal.loader.BundleLoader.findLocalClass(BundleLoader.java:418) + at org.eclipse.osgi.internal.loader.sources.SingleSourcePackage.loadClass(SingleSourcePackage.java:41) + at org.eclipse.osgi.internal.loader.BundleLoader.findClass0(BundleLoader.java:523) + at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:439) + at org.eclipse.osgi.internal.loader.ModuleClassLoader.loadClass(ModuleClassLoader.java:195) + at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:526) + at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:194) + at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:219) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:149) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:115) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:467) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:298) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) + at java.base/java.lang.reflect.Method.invoke(Method.java:580) + at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:615) + at org.eclipse.equinox.launcher.Main.basicRun(Main.java:563) + at org.eclipse.equinox.launcher.Main.run(Main.java:1415) + at org.eclipse.equinox.launcher.Main.main(Main.java:1387) +!SUBENTRY 1 org.eclipse.core.resources 4 567 2026-08-29 13:08:22.543 +!MESSAGE Could not read metadata for 'sillyblahaj.org.api'. +!STACK 1 +org.eclipse.core.internal.resources.ResourceException(/sillyblahaj.org.api)[567]: java.lang.Exception: The project description file (.project) for 'sillyblahaj.org.api' is missing. This file contains important information about the project. The project will not function properly until this file is restored. + at org.eclipse.core.internal.resources.ResourceException.provideStackTrace(ResourceException.java:42) + at org.eclipse.core.internal.resources.ResourceException.(ResourceException.java:38) + at org.eclipse.core.internal.localstore.FileSystemResourceManager.read(FileSystemResourceManager.java:1021) + at org.eclipse.core.internal.resources.SaveManager.restoreMetaInfo(SaveManager.java:1004) + at org.eclipse.core.internal.resources.SaveManager.restoreMetaInfo(SaveManager.java:983) + at org.eclipse.core.internal.resources.SaveManager.restore(SaveManager.java:825) + at org.eclipse.core.internal.resources.SaveManager.startup(SaveManager.java:1689) + at org.eclipse.core.internal.resources.Workspace.startup(Workspace.java:2677) + at org.eclipse.core.internal.resources.Workspace.open(Workspace.java:2369) + at org.eclipse.core.resources.ResourcesPlugin$WorkspaceInitCustomizer.addingService(ResourcesPlugin.java:591) + at org.eclipse.core.resources.ResourcesPlugin$WorkspaceInitCustomizer.addingService(ResourcesPlugin.java:1) + at org.osgi.util.tracker.ServiceTracker$Tracked.customizerAdding(ServiceTracker.java:947) + at org.osgi.util.tracker.ServiceTracker$Tracked.customizerAdding(ServiceTracker.java:1) + at org.osgi.util.tracker.AbstractTracked.trackAdding(AbstractTracked.java:257) + at org.osgi.util.tracker.AbstractTracked.trackInitial(AbstractTracked.java:184) + at org.osgi.util.tracker.ServiceTracker.open(ServiceTracker.java:324) + at org.osgi.util.tracker.ServiceTracker.open(ServiceTracker.java:267) + at org.eclipse.core.resources.ResourcesPlugin.start(ResourcesPlugin.java:565) + at org.eclipse.osgi.internal.framework.BundleContextImpl$2.run(BundleContextImpl.java:838) + at org.eclipse.osgi.internal.framework.BundleContextImpl$2.run(BundleContextImpl.java:1) + at java.base/java.security.AccessController.doPrivileged(AccessController.java:571) + at org.eclipse.osgi.internal.framework.BundleContextImpl.startActivator(BundleContextImpl.java:830) + at org.eclipse.osgi.internal.framework.BundleContextImpl.start(BundleContextImpl.java:780) + at org.eclipse.osgi.internal.framework.EquinoxBundle.startWorker0(EquinoxBundle.java:1082) + at org.eclipse.osgi.internal.framework.EquinoxBundle$EquinoxModule.startWorker(EquinoxBundle.java:394) + at org.eclipse.osgi.container.Module.doStart(Module.java:643) + at org.eclipse.osgi.container.Module.start(Module.java:500) + at org.eclipse.osgi.framework.util.SecureAction.start(SecureAction.java:528) + at org.eclipse.osgi.internal.hooks.EclipseLazyStarter.postFindLocalClass(EclipseLazyStarter.java:122) + at org.eclipse.osgi.internal.loader.classpath.ClasspathManager.findLocalClass(ClasspathManager.java:620) + at org.eclipse.osgi.internal.loader.ModuleClassLoader.findLocalClass(ModuleClassLoader.java:353) + at org.eclipse.osgi.internal.loader.BundleLoader.findLocalClass(BundleLoader.java:418) + at org.eclipse.osgi.internal.loader.sources.SingleSourcePackage.loadClass(SingleSourcePackage.java:41) + at org.eclipse.osgi.internal.loader.BundleLoader.findClass0(BundleLoader.java:523) + at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:439) + at org.eclipse.osgi.internal.loader.ModuleClassLoader.loadClass(ModuleClassLoader.java:195) + at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:526) + at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:194) + at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:219) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:149) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:115) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:467) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:298) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) + at java.base/java.lang.reflect.Method.invoke(Method.java:580) + at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:615) + at org.eclipse.equinox.launcher.Main.basicRun(Main.java:563) + at org.eclipse.equinox.launcher.Main.run(Main.java:1415) + at org.eclipse.equinox.launcher.Main.main(Main.java:1387) +!SUBENTRY 2 org.eclipse.core.resources 4 567 2026-08-29 13:08:22.543 +!MESSAGE The project description file (.project) for 'sillyblahaj.org.api' is missing. This file contains important information about the project. The project will not function properly until this file is restored. +!STACK 0 +java.lang.Exception: The project description file (.project) for 'sillyblahaj.org.api' is missing. This file contains important information about the project. The project will not function properly until this file is restored. + at org.eclipse.core.internal.resources.ResourceException.provideStackTrace(ResourceException.java:42) + at org.eclipse.core.internal.resources.ResourceException.(ResourceException.java:38) + at org.eclipse.core.internal.localstore.FileSystemResourceManager.read(FileSystemResourceManager.java:1021) + at org.eclipse.core.internal.resources.SaveManager.restoreMetaInfo(SaveManager.java:1004) + at org.eclipse.core.internal.resources.SaveManager.restoreMetaInfo(SaveManager.java:983) + at org.eclipse.core.internal.resources.SaveManager.restore(SaveManager.java:825) + at org.eclipse.core.internal.resources.SaveManager.startup(SaveManager.java:1689) + at org.eclipse.core.internal.resources.Workspace.startup(Workspace.java:2677) + at org.eclipse.core.internal.resources.Workspace.open(Workspace.java:2369) + at org.eclipse.core.resources.ResourcesPlugin$WorkspaceInitCustomizer.addingService(ResourcesPlugin.java:591) + at org.eclipse.core.resources.ResourcesPlugin$WorkspaceInitCustomizer.addingService(ResourcesPlugin.java:1) + at org.osgi.util.tracker.ServiceTracker$Tracked.customizerAdding(ServiceTracker.java:947) + at org.osgi.util.tracker.ServiceTracker$Tracked.customizerAdding(ServiceTracker.java:1) + at org.osgi.util.tracker.AbstractTracked.trackAdding(AbstractTracked.java:257) + at org.osgi.util.tracker.AbstractTracked.trackInitial(AbstractTracked.java:184) + at org.osgi.util.tracker.ServiceTracker.open(ServiceTracker.java:324) + at org.osgi.util.tracker.ServiceTracker.open(ServiceTracker.java:267) + at org.eclipse.core.resources.ResourcesPlugin.start(ResourcesPlugin.java:565) + at org.eclipse.osgi.internal.framework.BundleContextImpl$2.run(BundleContextImpl.java:838) + at org.eclipse.osgi.internal.framework.BundleContextImpl$2.run(BundleContextImpl.java:1) + at java.base/java.security.AccessController.doPrivileged(AccessController.java:571) + at org.eclipse.osgi.internal.framework.BundleContextImpl.startActivator(BundleContextImpl.java:830) + at org.eclipse.osgi.internal.framework.BundleContextImpl.start(BundleContextImpl.java:780) + at org.eclipse.osgi.internal.framework.EquinoxBundle.startWorker0(EquinoxBundle.java:1082) + at org.eclipse.osgi.internal.framework.EquinoxBundle$EquinoxModule.startWorker(EquinoxBundle.java:394) + at org.eclipse.osgi.container.Module.doStart(Module.java:643) + at org.eclipse.osgi.container.Module.start(Module.java:500) + at org.eclipse.osgi.framework.util.SecureAction.start(SecureAction.java:528) + at org.eclipse.osgi.internal.hooks.EclipseLazyStarter.postFindLocalClass(EclipseLazyStarter.java:122) + at org.eclipse.osgi.internal.loader.classpath.ClasspathManager.findLocalClass(ClasspathManager.java:620) + at org.eclipse.osgi.internal.loader.ModuleClassLoader.findLocalClass(ModuleClassLoader.java:353) + at org.eclipse.osgi.internal.loader.BundleLoader.findLocalClass(BundleLoader.java:418) + at org.eclipse.osgi.internal.loader.sources.SingleSourcePackage.loadClass(SingleSourcePackage.java:41) + at org.eclipse.osgi.internal.loader.BundleLoader.findClass0(BundleLoader.java:523) + at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:439) + at org.eclipse.osgi.internal.loader.ModuleClassLoader.loadClass(ModuleClassLoader.java:195) + at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:526) + at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:194) + at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:219) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:149) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:115) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:467) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:298) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) + at java.base/java.lang.reflect.Method.invoke(Method.java:580) + at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:615) + at org.eclipse.equinox.launcher.Main.basicRun(Main.java:563) + at org.eclipse.equinox.launcher.Main.run(Main.java:1415) + at org.eclipse.equinox.launcher.Main.main(Main.java:1387) + +!ENTRY ch.qos.logback.classic 1 0 2026-08-29 13:08:22.858 +!MESSAGE Logback config file: /home/Kotama_Chio/Musique/SillyBlahaj.org/Java/.metadata/.plugins/org.eclipse.m2e.logback/logback.2.7.101.20251017-1242.xml + +!ENTRY org.eclipse.jdt.core 4 969 2026-08-29 13:08:26.257 +!MESSAGE sillyblahaj.org.api does not exist + +!ENTRY org.eclipse.core.resources 4 567 2026-08-29 13:08:39.182 +!MESSAGE The project description file (.project) for 'SillyBlahaj.org' is missing. This file contains important information about the project. The project will not function properly until this file is restored. +!STACK 0 +java.lang.Exception: The project description file (.project) for 'SillyBlahaj.org' is missing. This file contains important information about the project. The project will not function properly until this file is restored. + at org.eclipse.core.internal.resources.ResourceException.provideStackTrace(ResourceException.java:42) + at org.eclipse.core.internal.resources.ResourceException.(ResourceException.java:38) + at org.eclipse.core.internal.localstore.FileSystemResourceManager.read(FileSystemResourceManager.java:1021) + at org.eclipse.core.internal.resources.SaveManager.restoreMetaInfo(SaveManager.java:1004) + at org.eclipse.core.internal.resources.SaveManager.restore(SaveManager.java:868) + at org.eclipse.core.internal.resources.Project.open(Project.java:1161) + at org.eclipse.ui.actions.OpenResourceAction$1.doOpenWithReferences(OpenResourceAction.java:235) + at org.eclipse.ui.actions.OpenResourceAction$1.runInWorkspace(OpenResourceAction.java:281) + at org.eclipse.core.internal.resources.InternalWorkspaceJob.run(InternalWorkspaceJob.java:43) + at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63) + +!ENTRY org.eclipse.jdt.core 4 969 2026-08-29 13:08:51.604 +!MESSAGE sillyblahaj.org.api does not exist + +!ENTRY org.eclipse.jdt.core 4 969 2026-08-29 13:08:51.671 +!MESSAGE sillyblahaj.org.api does not exist + +!ENTRY org.eclipse.jdt.core 4 969 2026-08-29 13:09:22.600 +!MESSAGE sillyblahaj.org.api does not exist + +!ENTRY org.eclipse.jdt.core 4 969 2026-08-29 13:09:22.631 +!MESSAGE sillyblahaj.org.api does not exist diff --git a/.metadata/.mylyn/.taskListIndex/segments_1 b/.metadata/.mylyn/.taskListIndex/segments_1 new file mode 100644 index 0000000..92d19e7 Binary files /dev/null and b/.metadata/.mylyn/.taskListIndex/segments_1 differ diff --git a/.metadata/.mylyn/.taskListIndex/write.lock b/.metadata/.mylyn/.taskListIndex/write.lock new file mode 100644 index 0000000..e69de29 diff --git a/.metadata/.mylyn/.tasks.xml.zip b/.metadata/.mylyn/.tasks.xml.zip new file mode 100644 index 0000000..90a2daa Binary files /dev/null and b/.metadata/.mylyn/.tasks.xml.zip differ diff --git a/.metadata/.mylyn/repositories.xml.zip b/.metadata/.mylyn/repositories.xml.zip new file mode 100644 index 0000000..c705d2d Binary files /dev/null and b/.metadata/.mylyn/repositories.xml.zip differ diff --git a/.metadata/.mylyn/tasks.xml.zip b/.metadata/.mylyn/tasks.xml.zip new file mode 100644 index 0000000..c17c3c8 Binary files /dev/null and b/.metadata/.mylyn/tasks.xml.zip differ diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/1b/c050a8ba9aa30011197aae2d8f81f7b0 b/.metadata/.plugins/org.eclipse.core.resources/.history/1b/c050a8ba9aa30011197aae2d8f81f7b0 new file mode 100644 index 0000000..0910b06 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.core.resources/.history/1b/c050a8ba9aa30011197aae2d8f81f7b0 @@ -0,0 +1,45 @@ +package org.sillyjrafe.uoapi.binds; + +import java.util.ArrayList; +import java.util.List; + +import org.json.JSONArray; +import org.json.JSONObject; +import org.sillyjirafe.uoapi.Api; +import org.sillyjirafe.uoapi.element; + +public class GitHubLGPLApi implements Api +{ + + public String getName() + { + return "GitHubLGPLApi"; + } + + public String getURL(int page) { + return "https://api.github.com/search/repositories?q=license:lgpl-3.0&page=" + page; + } + + public List Parse(String jsonRaw) { + List resultats = new ArrayList<>(); + + try { + JSONObject json = new JSONObject(jsonRaw); + JSONArray items = json.getJSONArray("items"); + + for (int i = 0; i < items.length(); i++) { + JSONObject repo = items.getJSONObject(i); + + String titre = repo.getString("full_name"); + String url = repo.getString("html_url"); + String licence = repo.getJSONObject("license").getString("spdx_id"); + + resultats.add(new element(titre, url, licence, "github", "code")); + } + } catch (org.json.JSONException e) { + System.out.println("error but continue : " + e.getMessage()); + } + + return resultats; + } +} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/31/b0635be19aa30011197aae2d8f81f7b0 b/.metadata/.plugins/org.eclipse.core.resources/.history/31/b0635be19aa30011197aae2d8f81f7b0 new file mode 100644 index 0000000..31dbba4 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.core.resources/.history/31/b0635be19aa30011197aae2d8f81f7b0 @@ -0,0 +1,43 @@ +package org.sillyjirafe.uoapi.binds; + +import java.util.ArrayList; +import java.util.List; + +import org.json.JSONArray; +import org.json.JSONObject; +import org.sillyblahaj.uoapi.Api; +import org.sillyblahaj.uoapi.element; + +public class OpenVerseImagesApi implements Api +{ + public String getName() + { + return "OpenVerseImagesApi"; + } + + public String getURL(int page) { + return "https://api.openverse.org/v1/images/?format=json&page=" + page; + } + + public List Parse(String jsonRaw) { + List resultats = new ArrayList<>(); + + try { + JSONObject json = new JSONObject(jsonRaw); + JSONArray items = json.getJSONArray("results"); + + for (int i = 0; i < items.length(); i++) { + JSONObject image = items.getJSONObject(i); + + String titre = image.getString("title"); + String url = image.getString("url"); + String licence = image.getString("license"); + + resultats.add(new element(titre, url, licence, "openverse", "image")); + } + } catch (org.json.JSONException e) { + System.out.println("error but continue : " + e.getMessage()); + } + return resultats; + } +} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/37/704db65f9aa30011197aae2d8f81f7b0 b/.metadata/.plugins/org.eclipse.core.resources/.history/37/704db65f9aa30011197aae2d8f81f7b0 new file mode 100644 index 0000000..db304d1 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.core.resources/.history/37/704db65f9aa30011197aae2d8f81f7b0 @@ -0,0 +1,25 @@ +package org.sillyjirafe.api; + +import java.util.List; + +import org.json.JSONArray; +import org.json.JSONObject; +import org.sillyblahaj.uoapi.element; + +public class Json { + public static String JSONConvert(List elements) { + JSONArray tableau = new JSONArray(); + + for (element e : elements) { + JSONObject obj = new JSONObject(); + obj.put("title", e.title()); + obj.put("url", e.url()); + obj.put("licence", e.licence()); + obj.put("source", e.source()); + obj.put("type", e.type()); + tableau.put(obj); + } + + return tableau.toString(); + } +} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/42/d0de85f89aa30011197aae2d8f81f7b0 b/.metadata/.plugins/org.eclipse.core.resources/.history/42/d0de85f89aa30011197aae2d8f81f7b0 new file mode 100644 index 0000000..b9812f0 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.core.resources/.history/42/d0de85f89aa30011197aae2d8f81f7b0 @@ -0,0 +1,49 @@ +package org.sillyjirafe.uoapi; + +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +import org.sillyblahaj.uoapi.binds.GitHubApacheApi; +import org.sillyblahaj.uoapi.binds.GitHubLGPLApi; +import org.sillyblahaj.uoapi.binds.GitHubMITApi; +import org.sillyblahaj.uoapi.binds.OpenVerseAudiosApi; +import org.sillyblahaj.uoapi.binds.OpenVerseImagesApi; + +public class Out { + List Apis = new ArrayList<>(); + + public List PreOut() + { + Apis.add(new GitHubMITApi()); + Apis.add(new GitHubLGPLApi()); + Apis.add(new GitHubApacheApi()); + Apis.add(new OpenVerseImagesApi()); + Apis.add(new OpenVerseAudiosApi()); + + List bindnames = new ArrayList<>(); + + for (Api api : Apis) + { + bindnames.add(api.getName()); + } + + return bindnames; + } + + public List out(Map bindpages) throws Exception + { + List Elements = new ArrayList<>(); + + for (int i = 0; i < Apis.size(); i++) + { + List currentapi = Caller.CallApi(Apis.get(i), bindpages.get(Apis.get(i).getName())); + for (int j = 0; j < currentapi.size(); j++) + { + Elements.add(currentapi.get(j)); + } + } + return Elements; + } +} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/5e/1088a1499aa30011197aae2d8f81f7b0 b/.metadata/.plugins/org.eclipse.core.resources/.history/5e/1088a1499aa30011197aae2d8f81f7b0 new file mode 100644 index 0000000..e1f989e --- /dev/null +++ b/.metadata/.plugins/org.eclipse.core.resources/.history/5e/1088a1499aa30011197aae2d8f81f7b0 @@ -0,0 +1,58 @@ +package org.sillyjirafe.api; + +import java.io.IOException; +import java.net.InetSocketAddress; +import java.sql.Connection; +import java.sql.SQLException; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +import org.sillyblahaj.uoapi.element; + +import com.sun.net.httpserver.HttpServer; + +public class Start { + public static void API(Connection conn) throws IOException { + HttpServer server = HttpServer.create(new InetSocketAddress(8081), 0); + + server.createContext("/search", exchange -> { + String query = exchange.getRequestURI().getQuery(); + Map settings = parseQuery(query); + + try { + List results = Search.search(conn, settings); + String json = Json.JSONConvert(results); + + exchange.getResponseHeaders().set("Content-Type", "application/json"); + exchange.sendResponseHeaders(200, json.getBytes().length); + exchange.getResponseBody().write(json.getBytes()); + exchange.getResponseBody().close(); + } catch (Exception e) { + e.printStackTrace(); + exchange.sendResponseHeaders(500, 0); + exchange.getResponseBody().close(); + } + }); + + server.start(); + System.out.println("Search API run on 8081 port"); + } + + public static Map parseQuery(String query) { + Map params = new HashMap<>(); + + if (query == null) return params; + + String[] paires = query.split("&"); + + for (String paire : paires) { + String[] cle_valeur = paire.split("=", 2); + if (cle_valeur.length == 2) { + params.put(cle_valeur[0], cle_valeur[1]); + } + } + + return params; + } +} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/7e/a0ca6ecc9aa30011197aae2d8f81f7b0 b/.metadata/.plugins/org.eclipse.core.resources/.history/7e/a0ca6ecc9aa30011197aae2d8f81f7b0 new file mode 100644 index 0000000..edc9ba8 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.core.resources/.history/7e/a0ca6ecc9aa30011197aae2d8f81f7b0 @@ -0,0 +1,45 @@ +package org.sillyjirafe.uoapi.binds; + +import org.json.JSONArray; +import org.json.JSONObject; +import org.sillyblahaj.uoapi.Api; +import org.sillyblahaj.uoapi.element; +import java.util.ArrayList; +import java.util.List; + +public class GitHubMITApi implements Api +{ + + public String getName() + { + return "GitHubMITApi"; + } + + public String getURL(int page) { + return "https://api.github.com/search/repositories?q=license:mit&page=" + page; + } + + public List Parse(String jsonRaw) { + List resultats = new ArrayList<>(); + + + try { + JSONObject json = new JSONObject(jsonRaw); + JSONArray items = json.getJSONArray("items"); + + for (int i = 0; i < items.length(); i++) { + JSONObject repo = items.getJSONObject(i); + + String titre = repo.getString("full_name"); + String url = repo.getString("html_url"); + String licence = repo.getJSONObject("license").getString("spdx_id"); + + resultats.add(new element(titre, url, licence, "github", "code")); + } + } catch (org.json.JSONException e) { + System.out.println("error but continue : " + e.getMessage()); + } + + return resultats; + } +} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/89/e0554c3d9aa30011197aae2d8f81f7b0 b/.metadata/.plugins/org.eclipse.core.resources/.history/89/e0554c3d9aa30011197aae2d8f81f7b0 new file mode 100644 index 0000000..d893ee4 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.core.resources/.history/89/e0554c3d9aa30011197aae2d8f81f7b0 @@ -0,0 +1,58 @@ +package org.sillyblahaj.api; + +import java.io.IOException; +import java.net.InetSocketAddress; +import java.sql.Connection; +import java.sql.SQLException; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +import org.sillyblahaj.uoapi.element; + +import com.sun.net.httpserver.HttpServer; + +public class Start { + public static void API(Connection conn) throws IOException { + HttpServer server = HttpServer.create(new InetSocketAddress(8081), 0); + + server.createContext("/search", exchange -> { + String query = exchange.getRequestURI().getQuery(); + Map settings = parseQuery(query); + + try { + List results = Search.search(conn, settings); + String json = Json.JSONConvert(results); + + exchange.getResponseHeaders().set("Content-Type", "application/json"); + exchange.sendResponseHeaders(200, json.getBytes().length); + exchange.getResponseBody().write(json.getBytes()); + exchange.getResponseBody().close(); + } catch (Exception e) { + e.printStackTrace(); + exchange.sendResponseHeaders(500, 0); + exchange.getResponseBody().close(); + } + }); + + server.start(); + System.out.println("Search API run on 8081 port"); + } + + public static Map parseQuery(String query) { + Map params = new HashMap<>(); + + if (query == null) return params; + + String[] paires = query.split("&"); + + for (String paire : paires) { + String[] cle_valeur = paire.split("=", 2); + if (cle_valeur.length == 2) { + params.put(cle_valeur[0], cle_valeur[1]); + } + } + + return params; + } +} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/8a/b01d73d89aa30011197aae2d8f81f7b0 b/.metadata/.plugins/org.eclipse.core.resources/.history/8a/b01d73d89aa30011197aae2d8f81f7b0 new file mode 100644 index 0000000..5eaa9d9 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.core.resources/.history/8a/b01d73d89aa30011197aae2d8f81f7b0 @@ -0,0 +1,44 @@ +package org.sillyjirafe.uoapi.binds; + +import java.util.ArrayList; +import java.util.List; + +import org.json.JSONArray; +import org.json.JSONObject; +import org.sillyjirafe.uoapi.Api; +import org.sillyblahaj.uoapi.element; + +public class OpenVerseAudiosApi implements Api +{ + public String getName() + { + return "OpenVerseAudiosApi"; + } + + public String getURL(int page) { + return "https://api.openverse.org/v1/audio/?format=json&page=" + page; + } + + public List Parse(String jsonRaw) { + List resultats = new ArrayList<>(); + + + try { + JSONObject json = new JSONObject(jsonRaw); + JSONArray items = json.getJSONArray("results"); + + for (int i = 0; i < items.length(); i++) { + JSONObject image = items.getJSONObject(i); + + String titre = image.getString("title"); + String url = image.getString("url"); + String licence = image.getString("license"); + + resultats.add(new element(titre, url, licence, "openverse", "audio")); + } + } catch (org.json.JSONException e) { + System.out.println("error but continue : " + e.getMessage()); + } + return resultats; + } +} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/8c/304781b79aa30011197aae2d8f81f7b0 b/.metadata/.plugins/org.eclipse.core.resources/.history/8c/304781b79aa30011197aae2d8f81f7b0 new file mode 100644 index 0000000..7408492 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.core.resources/.history/8c/304781b79aa30011197aae2d8f81f7b0 @@ -0,0 +1,45 @@ +package org.sillyjrafe.uoapi.binds; + +import java.util.ArrayList; +import java.util.List; + +import org.json.JSONArray; +import org.json.JSONObject; +import org.sillyblahaj.uoapi.Api; +import org.sillyblahaj.uoapi.element; + +public class GitHubLGPLApi implements Api +{ + + public String getName() + { + return "GitHubLGPLApi"; + } + + public String getURL(int page) { + return "https://api.github.com/search/repositories?q=license:lgpl-3.0&page=" + page; + } + + public List Parse(String jsonRaw) { + List resultats = new ArrayList<>(); + + try { + JSONObject json = new JSONObject(jsonRaw); + JSONArray items = json.getJSONArray("items"); + + for (int i = 0; i < items.length(); i++) { + JSONObject repo = items.getJSONObject(i); + + String titre = repo.getString("full_name"); + String url = repo.getString("html_url"); + String licence = repo.getJSONObject("license").getString("spdx_id"); + + resultats.add(new element(titre, url, licence, "github", "code")); + } + } catch (org.json.JSONException e) { + System.out.println("error but continue : " + e.getMessage()); + } + + return resultats; + } +} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/af/e042b7c19aa30011197aae2d8f81f7b0 b/.metadata/.plugins/org.eclipse.core.resources/.history/af/e042b7c19aa30011197aae2d8f81f7b0 new file mode 100644 index 0000000..cfef228 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.core.resources/.history/af/e042b7c19aa30011197aae2d8f81f7b0 @@ -0,0 +1,44 @@ +package org.sillyjirafe.uoapi.binds; + +import java.util.ArrayList; +import java.util.List; + +import org.json.JSONArray; +import org.json.JSONObject; +import org.sillyblahaj.uoapi.Api; +import org.sillyblahaj.uoapi.element; + +public class GitHubApacheApi implements Api +{ + public String getName() + { + return "GitHubApacheApi"; + } + + public String getURL(int page) { + return "https://api.github.com/search/repositories?q=license:apache-2.0&page=" + page; + } + + public List Parse(String jsonRaw) { + List resultats = new ArrayList<>(); + + try { + JSONObject json = new JSONObject(jsonRaw); + JSONArray items = json.getJSONArray("items"); + + for (int i = 0; i < items.length(); i++) { + JSONObject repo = items.getJSONObject(i); + + String titre = repo.getString("full_name"); + String url = repo.getString("html_url"); + String licence = repo.getJSONObject("license").getString("spdx_id"); + + resultats.add(new element(titre, url, licence, "github", "code")); + } + } catch (org.json.JSONException e) { + System.out.println("error but continue : " + e.getMessage()); + } + + return resultats; + } +} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/bc/504c0be59aa30011197aae2d8f81f7b0 b/.metadata/.plugins/org.eclipse.core.resources/.history/bc/504c0be59aa30011197aae2d8f81f7b0 new file mode 100644 index 0000000..b3a8f92 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.core.resources/.history/bc/504c0be59aa30011197aae2d8f81f7b0 @@ -0,0 +1,43 @@ +package org.sillyjirafe.uoapi.binds; + +import java.util.ArrayList; +import java.util.List; + +import org.json.JSONArray; +import org.json.JSONObject; +import org.sillyjirafe.uoapi.Api; +import org.sillyblahaj.uoapi.element; + +public class OpenVerseImagesApi implements Api +{ + public String getName() + { + return "OpenVerseImagesApi"; + } + + public String getURL(int page) { + return "https://api.openverse.org/v1/images/?format=json&page=" + page; + } + + public List Parse(String jsonRaw) { + List resultats = new ArrayList<>(); + + try { + JSONObject json = new JSONObject(jsonRaw); + JSONArray items = json.getJSONArray("results"); + + for (int i = 0; i < items.length(); i++) { + JSONObject image = items.getJSONObject(i); + + String titre = image.getString("title"); + String url = image.getString("url"); + String licence = image.getString("license"); + + resultats.add(new element(titre, url, licence, "openverse", "image")); + } + } catch (org.json.JSONException e) { + System.out.println("error but continue : " + e.getMessage()); + } + return resultats; + } +} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/bd/b0507b399aa30011197aae2d8f81f7b0 b/.metadata/.plugins/org.eclipse.core.resources/.history/bd/b0507b399aa30011197aae2d8f81f7b0 new file mode 100644 index 0000000..2f66f6f --- /dev/null +++ b/.metadata/.plugins/org.eclipse.core.resources/.history/bd/b0507b399aa30011197aae2d8f81f7b0 @@ -0,0 +1,44 @@ +package org.sillyblahaj.api; + +import java.sql.Connection; +import java.sql.PreparedStatement; +import java.sql.ResultSet; +import java.sql.SQLException; +import java.util.ArrayList; +import java.util.List; +import java.util.Map; + +import org.sillyblahaj.uoapi.element; + +public class Search { + public static List search(Connection conn, Map settings) throws SQLException { + List results = new ArrayList<>(); + String sql = """ + SELECT * FROM creations + WHERE (? = '' OR title LIKE ?) + AND (? = '' OR licence = ?) + AND (? = '' OR type = ?) + """; + + try (PreparedStatement ps = conn.prepareStatement(sql)) { + ps.setString(1, settings.getOrDefault("q", "")); + ps.setString(2, "%" + settings.getOrDefault("q", "") + "%"); + ps.setString(3, settings.getOrDefault("licence", "")); + ps.setString(4, settings.getOrDefault("licence", "")); + ps.setString(5, settings.getOrDefault("type", "")); + ps.setString(6, settings.getOrDefault("type", "")); + ResultSet rs = ps.executeQuery(); + + while (rs.next()) { + results.add(new element( + rs.getString("title"), + rs.getString("url"), + rs.getString("licence"), + rs.getString("source"), + rs.getString("type") + )); + } + } + return results; + } +} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/ca/60fd6f929aa30011197aae2d8f81f7b0 b/.metadata/.plugins/org.eclipse.core.resources/.history/ca/60fd6f929aa30011197aae2d8f81f7b0 new file mode 100644 index 0000000..3fc2f91 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.core.resources/.history/ca/60fd6f929aa30011197aae2d8f81f7b0 @@ -0,0 +1,42 @@ +package org.sillyjirafe.linker; + +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +import org.sillyblahaj.db.Crawl_StateDB; +import org.sillyblahaj.db.ElementsDB; +import org.sillyblahaj.uoapi.*; + +public class Main { + public static void main(String[] args) throws Exception + { + Out Out = new Out(); + ElementsDB elementDB = new ElementsDB("jdbc:sqlite:elements.db"); + Crawl_StateDB crawlstateDB = new Crawl_StateDB("jdbc:sqlite:crawlstates.db"); + elementDB.LinkToDB(); + crawlstateDB.LinkToDB(); + + List bindNames = Out.PreOut(); + + Map pages = new HashMap<>(); + for (String nom : bindNames) { + pages.put(nom, crawlstateDB.getPage(nom)); + } + + List elements = Out.out(pages); + + for (int i = 0; i < elements.size(); i++) + { + element el = elements.get(i); + elementDB.AddEllement(el.title(), el.url(), el.licence(), el.source(), el.type()); + } + + for (String name : bindNames) { + crawlstateDB.updatePage(name); + } + + elementDB.Close(); + crawlstateDB.Close(); + } +} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/ce/602754579aa30011197aae2d8f81f7b0 b/.metadata/.plugins/org.eclipse.core.resources/.history/ce/602754579aa30011197aae2d8f81f7b0 new file mode 100644 index 0000000..3e03d2b --- /dev/null +++ b/.metadata/.plugins/org.eclipse.core.resources/.history/ce/602754579aa30011197aae2d8f81f7b0 @@ -0,0 +1,44 @@ +package org.sillyjirafe.api; + +import java.sql.Connection; +import java.sql.PreparedStatement; +import java.sql.ResultSet; +import java.sql.SQLException; +import java.util.ArrayList; +import java.util.List; +import java.util.Map; + +import org.sillyblahaj.uoapi.element; + +public class Search { + public static List search(Connection conn, Map settings) throws SQLException { + List results = new ArrayList<>(); + String sql = """ + SELECT * FROM creations + WHERE (? = '' OR title LIKE ?) + AND (? = '' OR licence = ?) + AND (? = '' OR type = ?) + """; + + try (PreparedStatement ps = conn.prepareStatement(sql)) { + ps.setString(1, settings.getOrDefault("q", "")); + ps.setString(2, "%" + settings.getOrDefault("q", "") + "%"); + ps.setString(3, settings.getOrDefault("licence", "")); + ps.setString(4, settings.getOrDefault("licence", "")); + ps.setString(5, settings.getOrDefault("type", "")); + ps.setString(6, settings.getOrDefault("type", "")); + ResultSet rs = ps.executeQuery(); + + while (rs.next()) { + results.add(new element( + rs.getString("title"), + rs.getString("url"), + rs.getString("licence"), + rs.getString("source"), + rs.getString("type") + )); + } + } + return results; + } +} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/dd/907434959aa30011197aae2d8f81f7b0 b/.metadata/.plugins/org.eclipse.core.resources/.history/dd/907434959aa30011197aae2d8f81f7b0 new file mode 100644 index 0000000..b16de8b --- /dev/null +++ b/.metadata/.plugins/org.eclipse.core.resources/.history/dd/907434959aa30011197aae2d8f81f7b0 @@ -0,0 +1,42 @@ +package org.sillyjirafe.linker; + +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +import org.sillyjirafe.db.Crawl_StateDB; +import org.sillyjirafe.db.ElementsDB; +import org.sillyblahaj.uoapi.*; + +public class Main { + public static void main(String[] args) throws Exception + { + Out Out = new Out(); + ElementsDB elementDB = new ElementsDB("jdbc:sqlite:elements.db"); + Crawl_StateDB crawlstateDB = new Crawl_StateDB("jdbc:sqlite:crawlstates.db"); + elementDB.LinkToDB(); + crawlstateDB.LinkToDB(); + + List bindNames = Out.PreOut(); + + Map pages = new HashMap<>(); + for (String nom : bindNames) { + pages.put(nom, crawlstateDB.getPage(nom)); + } + + List elements = Out.out(pages); + + for (int i = 0; i < elements.size(); i++) + { + element el = elements.get(i); + elementDB.AddEllement(el.title(), el.url(), el.licence(), el.source(), el.type()); + } + + for (String name : bindNames) { + crawlstateDB.updatePage(name); + } + + elementDB.Close(); + crawlstateDB.Close(); + } +} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/e3/00e699d59aa30011197aae2d8f81f7b0 b/.metadata/.plugins/org.eclipse.core.resources/.history/e3/00e699d59aa30011197aae2d8f81f7b0 new file mode 100644 index 0000000..79b1bd3 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.core.resources/.history/e3/00e699d59aa30011197aae2d8f81f7b0 @@ -0,0 +1,44 @@ +package org.sillyjirafe.uoapi.binds; + +import java.util.ArrayList; +import java.util.List; + +import org.json.JSONArray; +import org.json.JSONObject; +import org.sillyblahaj.uoapi.Api; +import org.sillyblahaj.uoapi.element; + +public class OpenVerseAudiosApi implements Api +{ + public String getName() + { + return "OpenVerseAudiosApi"; + } + + public String getURL(int page) { + return "https://api.openverse.org/v1/audio/?format=json&page=" + page; + } + + public List Parse(String jsonRaw) { + List resultats = new ArrayList<>(); + + + try { + JSONObject json = new JSONObject(jsonRaw); + JSONArray items = json.getJSONArray("results"); + + for (int i = 0; i < items.length(); i++) { + JSONObject image = items.getJSONObject(i); + + String titre = image.getString("title"); + String url = image.getString("url"); + String licence = image.getString("license"); + + resultats.add(new element(titre, url, licence, "openverse", "audio")); + } + } catch (org.json.JSONException e) { + System.out.println("error but continue : " + e.getMessage()); + } + return resultats; + } +} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.projects/.org.eclipse.egit.core.cmp/.location b/.metadata/.plugins/org.eclipse.core.resources/.projects/.org.eclipse.egit.core.cmp/.location new file mode 100644 index 0000000..eedf3a7 Binary files /dev/null and b/.metadata/.plugins/org.eclipse.core.resources/.projects/.org.eclipse.egit.core.cmp/.location differ diff --git a/.metadata/.plugins/org.eclipse.core.resources/.projects/SillyJirafe.org/.indexes/e4/e4/90/40/d6/history.index b/.metadata/.plugins/org.eclipse.core.resources/.projects/SillyJirafe.org/.indexes/e4/e4/90/40/d6/history.index new file mode 100644 index 0000000..779553e Binary files /dev/null and b/.metadata/.plugins/org.eclipse.core.resources/.projects/SillyJirafe.org/.indexes/e4/e4/90/40/d6/history.index differ diff --git a/.metadata/.plugins/org.eclipse.core.resources/.projects/SillyJirafe.org/.indexes/e4/e4/90/40/history.index b/.metadata/.plugins/org.eclipse.core.resources/.projects/SillyJirafe.org/.indexes/e4/e4/90/40/history.index new file mode 100644 index 0000000..fc84f98 Binary files /dev/null and b/.metadata/.plugins/org.eclipse.core.resources/.projects/SillyJirafe.org/.indexes/e4/e4/90/40/history.index differ diff --git a/.metadata/.plugins/org.eclipse.core.resources/.projects/SillyJirafe.org/.indexes/e4/e4/90/d9/history.index b/.metadata/.plugins/org.eclipse.core.resources/.projects/SillyJirafe.org/.indexes/e4/e4/90/d9/history.index new file mode 100644 index 0000000..7a6073b Binary files /dev/null and b/.metadata/.plugins/org.eclipse.core.resources/.projects/SillyJirafe.org/.indexes/e4/e4/90/d9/history.index differ diff --git a/.metadata/.plugins/org.eclipse.core.resources/.projects/SillyJirafe.org/.location b/.metadata/.plugins/org.eclipse.core.resources/.projects/SillyJirafe.org/.location new file mode 100644 index 0000000..7eac6bd Binary files /dev/null and b/.metadata/.plugins/org.eclipse.core.resources/.projects/SillyJirafe.org/.location differ diff --git a/.metadata/.plugins/org.eclipse.core.resources/.projects/SillyJirafe.org/.markers b/.metadata/.plugins/org.eclipse.core.resources/.projects/SillyJirafe.org/.markers new file mode 100644 index 0000000..6b14ecb Binary files /dev/null and b/.metadata/.plugins/org.eclipse.core.resources/.projects/SillyJirafe.org/.markers differ diff --git a/.metadata/.plugins/org.eclipse.core.resources/.projects/SillyJirafe.org/org.eclipse.jdt.core/state.dat b/.metadata/.plugins/org.eclipse.core.resources/.projects/SillyJirafe.org/org.eclipse.jdt.core/state.dat new file mode 100644 index 0000000..e4af2b0 Binary files /dev/null and b/.metadata/.plugins/org.eclipse.core.resources/.projects/SillyJirafe.org/org.eclipse.jdt.core/state.dat differ diff --git a/.metadata/.plugins/org.eclipse.core.resources/.projects/sillyjirafe.org.api/.indexes/e4/e4/90/1a/history.index b/.metadata/.plugins/org.eclipse.core.resources/.projects/sillyjirafe.org.api/.indexes/e4/e4/90/1a/history.index new file mode 100644 index 0000000..4b120c9 Binary files /dev/null and b/.metadata/.plugins/org.eclipse.core.resources/.projects/sillyjirafe.org.api/.indexes/e4/e4/90/1a/history.index differ diff --git a/.metadata/.plugins/org.eclipse.core.resources/.projects/sillyjirafe.org.api/.location b/.metadata/.plugins/org.eclipse.core.resources/.projects/sillyjirafe.org.api/.location new file mode 100644 index 0000000..7eac6bd Binary files /dev/null and b/.metadata/.plugins/org.eclipse.core.resources/.projects/sillyjirafe.org.api/.location differ diff --git a/.metadata/.plugins/org.eclipse.core.resources/.projects/sillyjirafe.org.api/.markers b/.metadata/.plugins/org.eclipse.core.resources/.projects/sillyjirafe.org.api/.markers new file mode 100644 index 0000000..d54e513 Binary files /dev/null and b/.metadata/.plugins/org.eclipse.core.resources/.projects/sillyjirafe.org.api/.markers differ diff --git a/.metadata/.plugins/org.eclipse.core.resources/.projects/sillyjirafe.org.api/org.eclipse.jdt.core/state.dat b/.metadata/.plugins/org.eclipse.core.resources/.projects/sillyjirafe.org.api/org.eclipse.jdt.core/state.dat new file mode 100644 index 0000000..a2dc46b Binary files /dev/null and b/.metadata/.plugins/org.eclipse.core.resources/.projects/sillyjirafe.org.api/org.eclipse.jdt.core/state.dat differ diff --git a/.metadata/.plugins/org.eclipse.core.resources/.root/.indexes/history.version b/.metadata/.plugins/org.eclipse.core.resources/.root/.indexes/history.version new file mode 100644 index 0000000..25cb955 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.core.resources/.root/.indexes/history.version @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/.metadata/.plugins/org.eclipse.core.resources/.root/.indexes/properties.index b/.metadata/.plugins/org.eclipse.core.resources/.root/.indexes/properties.index new file mode 100644 index 0000000..093f6f6 Binary files /dev/null and b/.metadata/.plugins/org.eclipse.core.resources/.root/.indexes/properties.index differ diff --git a/.metadata/.plugins/org.eclipse.core.resources/.root/.indexes/properties.version b/.metadata/.plugins/org.eclipse.core.resources/.root/.indexes/properties.version new file mode 100644 index 0000000..6b2aaa7 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.core.resources/.root/.indexes/properties.version @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/.metadata/.plugins/org.eclipse.core.resources/.root/16.tree b/.metadata/.plugins/org.eclipse.core.resources/.root/16.tree new file mode 100644 index 0000000..46d91b0 Binary files /dev/null and b/.metadata/.plugins/org.eclipse.core.resources/.root/16.tree differ diff --git a/.metadata/.plugins/org.eclipse.core.resources/.safetable/org.eclipse.core.resources b/.metadata/.plugins/org.eclipse.core.resources/.safetable/org.eclipse.core.resources new file mode 100644 index 0000000..7c9efcc Binary files /dev/null and b/.metadata/.plugins/org.eclipse.core.resources/.safetable/org.eclipse.core.resources differ diff --git a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ant.ui.prefs b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ant.ui.prefs new file mode 100644 index 0000000..565f933 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ant.ui.prefs @@ -0,0 +1,3 @@ +eclipse.preferences.version=1 +useAnnotationsPrefPage=true +useQuickDiffPrefPage=true diff --git a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.core.resources.prefs b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.core.resources.prefs new file mode 100644 index 0000000..30841eb --- /dev/null +++ b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.core.resources.prefs @@ -0,0 +1,3 @@ +eclipse.preferences.version=1 +encoding=UTF-8 +version=1 diff --git a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.core.variables.prefs b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.core.variables.prefs new file mode 100644 index 0000000..0cc508a --- /dev/null +++ b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.core.variables.prefs @@ -0,0 +1,2 @@ +eclipse.preferences.version=1 +org.eclipse.core.variables.valueVariables=\n\n diff --git a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.debug.ui.prefs b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.debug.ui.prefs new file mode 100644 index 0000000..a2e2ec3 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.debug.ui.prefs @@ -0,0 +1,3 @@ +eclipse.preferences.version=1 +org.eclipse.debug.ui.PREF_LAUNCH_PERSPECTIVES=\n\n +preferredTargets=default\:default| diff --git a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.core.prefs b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.core.prefs new file mode 100644 index 0000000..f395b7d --- /dev/null +++ b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.core.prefs @@ -0,0 +1,6 @@ +eclipse.preferences.version=1 +org.eclipse.jdt.core.codeComplete.visibilityCheck=enabled +org.eclipse.jdt.core.compiler.codegen.targetPlatform=21 +org.eclipse.jdt.core.compiler.compliance=21 +org.eclipse.jdt.core.compiler.release=enabled +org.eclipse.jdt.core.compiler.source=21 diff --git a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.junit.prefs b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.junit.prefs new file mode 100644 index 0000000..31df02c --- /dev/null +++ b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.junit.prefs @@ -0,0 +1,2 @@ +eclipse.preferences.version=1 +org.eclipse.jdt.junit.content_assist_favorite_static_members_migrated=true diff --git a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.launching.prefs b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.launching.prefs new file mode 100644 index 0000000..5c428db --- /dev/null +++ b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.launching.prefs @@ -0,0 +1,2 @@ +eclipse.preferences.version=1 +org.eclipse.jdt.launching.PREF_VM_XML=\n\n \n \n \n\n diff --git a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.ui.prefs b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.ui.prefs new file mode 100644 index 0000000..ccc96c7 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.ui.prefs @@ -0,0 +1,11 @@ +content_assist_disabled_computers=org.eclipse.jdt.ui.textProposalCategory\u0000org.eclipse.jdt.ui.javaPostfixProposalCategory\u0000org.eclipse.jdt.ui.javaAllProposalCategory\u0000org.eclipse.jdt.ui.javaTypeProposalCategory\u0000org.eclipse.jdt.ui.javaNoTypeProposalCategory\u0000org.eclipse.jdt.ui.javaChainProposalCategory\u0000 +content_assist_lru_history= +content_assist_number_of_computers=15 +content_assist_proposals_background=20,22,24 +content_assist_proposals_foreground=252,252,252 +eclipse.preferences.version=1 +org.eclipse.jdt.ui.formatterprofiles.version=23 +spelling_locale_initialized=true +typefilter_migrated_2=true +useAnnotationsPrefPage=true +useQuickDiffPrefPage=true diff --git a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.m2e.discovery.prefs b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.m2e.discovery.prefs new file mode 100644 index 0000000..67b1d96 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.m2e.discovery.prefs @@ -0,0 +1,2 @@ +eclipse.preferences.version=1 +org.eclipse.m2e.discovery.pref.projects= diff --git a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.mylyn.context.core.prefs b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.mylyn.context.core.prefs new file mode 100644 index 0000000..43e97e4 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.mylyn.context.core.prefs @@ -0,0 +1,2 @@ +eclipse.preferences.version=1 +mylyn.attention.migrated=true diff --git a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.mylyn.java.ui.prefs b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.mylyn.java.ui.prefs new file mode 100644 index 0000000..2a6fe50 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.mylyn.java.ui.prefs @@ -0,0 +1,3 @@ +eclipse.preferences.version=1 +org.eclipse.mylyn.java.ui.run.count.3_10_0=1 +org.eclipse.mylyn.java.ui.run.count.3_1_0=1 diff --git a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.mylyn.monitor.ui.prefs b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.mylyn.monitor.ui.prefs new file mode 100644 index 0000000..8d462a6 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.mylyn.monitor.ui.prefs @@ -0,0 +1,2 @@ +eclipse.preferences.version=1 +org.eclipse.mylyn.monitor.activity.tracking.enabled.checked=true diff --git a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.mylyn.tasks.ui.prefs b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.mylyn.tasks.ui.prefs new file mode 100644 index 0000000..2b60c21 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.mylyn.tasks.ui.prefs @@ -0,0 +1,5 @@ +eclipse.preferences.version=1 +migrated.task.repositories.secure.store=true +org.eclipse.mylyn.tasks.ui.filters.nonmatching=true +org.eclipse.mylyn.tasks.ui.filters.nonmatching.encouraged=true +org.eclipse.mylyn.tasks.ui.welcome.message=true diff --git a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.ide.prefs b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.ide.prefs new file mode 100644 index 0000000..872e649 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.ide.prefs @@ -0,0 +1,6 @@ +IMPORT_FILES_AND_FOLDERS_RELATIVE=true +IMPORT_FILES_AND_FOLDERS_TYPE=23,1 +eclipse.preferences.version=1 +platformState=944991997831560 +quickStart=false +tipsAndTricks=true diff --git a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.prefs b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.prefs new file mode 100644 index 0000000..08076f2 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.prefs @@ -0,0 +1,2 @@ +eclipse.preferences.version=1 +showIntro=false diff --git a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.workbench.prefs b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.workbench.prefs new file mode 100644 index 0000000..f8e0a1e --- /dev/null +++ b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.workbench.prefs @@ -0,0 +1,12 @@ +//org.eclipse.ui.commands/state/org.eclipse.ui.navigator.resources.nested.changeProjectPresentation/org.eclipse.ui.commands.radioState=false +PLUGINS_NOT_ACTIVATED_ON_STARTUP=;org.eclipse.m2e.discovery; +eclipse.preferences.version=1 +org.eclipse.ui.workbench.ACTIVE_NOFOCUS_TAB_BG_END=41,41,41 +org.eclipse.ui.workbench.ACTIVE_NOFOCUS_TAB_BG_START=43,44,45 +org.eclipse.ui.workbench.ACTIVE_NOFOCUS_TAB_TEXT_COLOR=255,255,255 +org.eclipse.ui.workbench.ACTIVE_TAB_BG_END=72,72,76 +org.eclipse.ui.workbench.ACTIVE_TAB_BG_START=72,72,76 +org.eclipse.ui.workbench.ACTIVE_TAB_TEXT_COLOR=187,187,187 +org.eclipse.ui.workbench.INACTIVE_TAB_BG_END=49,53,56 +org.eclipse.ui.workbench.INACTIVE_TAB_BG_START=59,64,66 +org.eclipse.ui.workbench.INACTIVE_TAB_TEXT_COLOR=187,187,187 diff --git a/.metadata/.plugins/org.eclipse.debug.core/.launches/Main (1).launch b/.metadata/.plugins/org.eclipse.debug.core/.launches/Main (1).launch new file mode 100644 index 0000000..8715a85 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.debug.core/.launches/Main (1).launch @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/.metadata/.plugins/org.eclipse.debug.core/.launches/Main (2).launch b/.metadata/.plugins/org.eclipse.debug.core/.launches/Main (2).launch new file mode 100644 index 0000000..bb3b744 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.debug.core/.launches/Main (2).launch @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/.metadata/.plugins/org.eclipse.debug.core/.launches/Main.launch b/.metadata/.plugins/org.eclipse.debug.core/.launches/Main.launch new file mode 100644 index 0000000..be8b32d --- /dev/null +++ b/.metadata/.plugins/org.eclipse.debug.core/.launches/Main.launch @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/.metadata/.plugins/org.eclipse.debug.ui/dialog_settings.xml b/.metadata/.plugins/org.eclipse.debug.ui/dialog_settings.xml new file mode 100644 index 0000000..b76a0e5 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.debug.ui/dialog_settings.xml @@ -0,0 +1,8 @@ + +
+
+ + + +
+
diff --git a/.metadata/.plugins/org.eclipse.debug.ui/launchConfigurationHistory.xml b/.metadata/.plugins/org.eclipse.debug.ui/launchConfigurationHistory.xml new file mode 100644 index 0000000..6b04dde --- /dev/null +++ b/.metadata/.plugins/org.eclipse.debug.ui/launchConfigurationHistory.xml @@ -0,0 +1,23 @@ + + + + + + + + + + + + + + + + + + + + + + + diff --git a/.metadata/.plugins/org.eclipse.e4.workbench/workbench.xmi b/.metadata/.plugins/org.eclipse.e4.workbench/workbench.xmi new file mode 100644 index 0000000..f275f37 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.e4.workbench/workbench.xmi @@ -0,0 +1,2587 @@ + + + + activeSchemeId:org.eclipse.ui.defaultAcceleratorConfiguration + + + + + + + + topLevel + shellMaximized + + + + + persp.actionSet:org.eclipse.mylyn.tasks.ui.navigation + persp.actionSet:org.eclipse.ui.cheatsheets.actionSet + persp.actionSet:org.eclipse.search.searchActionSet + persp.actionSet:org.eclipse.text.quicksearch.actionSet + persp.actionSet:org.eclipse.ui.edit.text.actionSet.annotationNavigation + persp.actionSet:org.eclipse.ui.edit.text.actionSet.navigation + persp.actionSet:org.eclipse.ui.edit.text.actionSet.convertLineDelimitersTo + persp.actionSet:org.eclipse.ui.externaltools.ExternalToolsSet + persp.actionSet:org.eclipse.ui.actionSet.keyBindings + persp.actionSet:org.eclipse.ui.actionSet.openFiles + persp.actionSet:org.eclipse.debug.ui.launchActionSet + persp.actionSet:org.eclipse.jdt.ui.JavaActionSet + persp.actionSet:org.eclipse.jdt.ui.JavaElementCreationActionSet + persp.actionSet:org.eclipse.ui.NavigateActionSet + persp.viewSC:org.eclipse.jdt.ui.PackageExplorer + persp.viewSC:org.eclipse.jdt.ui.TypeHierarchy + persp.viewSC:org.eclipse.jdt.ui.SourceView + persp.viewSC:org.eclipse.jdt.ui.JavadocView + persp.viewSC:org.eclipse.search.ui.views.SearchView + persp.viewSC:org.eclipse.ui.console.ConsoleView + persp.viewSC:org.eclipse.ui.views.ContentOutline + persp.viewSC:org.eclipse.ui.views.ProblemView + persp.viewSC:org.eclipse.ui.views.TaskList + persp.viewSC:org.eclipse.ui.views.ProgressView + persp.viewSC:org.eclipse.ui.navigator.ProjectExplorer + persp.viewSC:org.eclipse.ui.texteditor.TemplatesView + persp.viewSC:org.eclipse.pde.runtime.LogView + persp.newWizSC:org.eclipse.jdt.ui.wizards.JavaProjectWizard + persp.newWizSC:org.eclipse.jdt.ui.wizards.NewPackageCreationWizard + persp.newWizSC:org.eclipse.jdt.ui.wizards.NewClassCreationWizard + persp.newWizSC:org.eclipse.jdt.ui.wizards.NewInterfaceCreationWizard + persp.newWizSC:org.eclipse.jdt.ui.wizards.NewEnumCreationWizard + persp.newWizSC:org.eclipse.jdt.ui.wizards.NewRecordCreationWizard + persp.newWizSC:org.eclipse.jdt.ui.wizards.NewAnnotationCreationWizard + persp.newWizSC:org.eclipse.jdt.ui.wizards.NewSourceFolderCreationWizard + persp.newWizSC:org.eclipse.jdt.ui.wizards.NewSnippetFileCreationWizard + persp.newWizSC:org.eclipse.jdt.ui.wizards.NewJavaWorkingSetWizard + persp.newWizSC:org.eclipse.ui.wizards.new.folder + persp.newWizSC:org.eclipse.ui.wizards.new.file + persp.newWizSC:org.eclipse.ui.editors.wizards.UntitledTextFileWizard + persp.perspSC:org.eclipse.jdt.ui.JavaBrowsingPerspective + persp.perspSC:org.eclipse.debug.ui.DebugPerspective + persp.showIn:org.eclipse.jdt.ui.PackageExplorer + persp.showIn:org.eclipse.team.ui.GenericHistoryView + persp.showIn:org.eclipse.ui.navigator.ProjectExplorer + persp.viewSC:org.eclipse.mylyn.tasks.ui.views.tasks + persp.newWizSC:org.eclipse.mylyn.tasks.ui.wizards.new.repository.task + persp.viewSC:org.eclipse.terminal.view.ui.TerminalsView + persp.showIn:org.eclipse.terminal.view.ui.TerminalsView + persp.actionSet:org.eclipse.debug.ui.breakpointActionSet + persp.actionSet:org.eclipse.jdt.debug.ui.JDTDebugActionSet + persp.newWizSC:org.eclipse.m2e.core.wizards.Maven2ProjectWizard + persp.actionSet:org.eclipse.eclemma.ui.CoverageActionSet + persp.showIn:org.eclipse.eclemma.ui.CoverageView + persp.viewSC:org.eclipse.jdt.bcoview.views.BytecodeOutlineView + persp.showIn:org.eclipse.egit.ui.RepositoriesView + persp.newWizSC:org.eclipse.jdt.junit.wizards.NewTestCaseCreationWizard + persp.actionSet:org.eclipse.jdt.junit.JUnitActionSet + persp.viewSC:org.eclipse.ant.ui.views.AntView + persp.editorOnboardingImageUri:platform:/plugin/org.eclipse.jdt.ui/$nl$/icons/full/onboarding_jperspective.svg + persp.editorOnboardingText:Open a file or drop files here to open them. + persp.editorOnboardingCommand:Find Actions$$$Ctrl+3 + persp.editorOnboardingCommand:Show Key Assist$$$Shift+Ctrl+L + persp.editorOnboardingCommand:New$$$Ctrl+N + persp.editorOnboardingCommand:Open Type$$$Shift+Ctrl+T + + + + org.eclipse.e4.primaryNavigationStack + + View + categoryTag:Java + + + View + categoryTag:Java + + + View + categoryTag:General + + + View + categoryTag:Java + + + + + View + categoryTag:Git + + + + + + + + org.eclipse.e4.secondaryNavigationStack + + View + categoryTag:General + + + View + categoryTag:General + + + View + categoryTag:General + + + View + categoryTag:Mylyn + + + View + categoryTag:Java + + + View + categoryTag:Ant + + + + + org.eclipse.e4.secondaryDataStack + + View + categoryTag:General + + + View + categoryTag:Java + + + View + categoryTag:Java + + + View + categoryTag:General + + + View + categoryTag:General + + + View + categoryTag:General + + + View + categoryTag:General + + + View + categoryTag:Terminal + + + + + + + + + View + categoryTag:Help + + + View + categoryTag:General + + + View + categoryTag:Help + + + + + + + View + categoryTag:Help + + + + + + View + categoryTag:General + + ViewMenu + menuContribution:menu + + + + + + + View + categoryTag:Help + + + + EditorStack + org.eclipse.e4.primaryDataStack + active + + + Editor + removeOnHide + org.eclipse.jdt.ui.CompilationUnitEditor + + + + Editor + removeOnHide + org.eclipse.jdt.ui.CompilationUnitEditor + + + + Editor + removeOnHide + org.eclipse.jdt.ui.CompilationUnitEditor + + + + Editor + removeOnHide + org.eclipse.jdt.ui.CompilationUnitEditor + + + + Editor + removeOnHide + org.eclipse.jdt.ui.CompilationUnitEditor + + + + Editor + removeOnHide + org.eclipse.jdt.ui.CompilationUnitEditor + active + activeOnClose + + + + Editor + removeOnHide + org.eclipse.jdt.ui.CompilationUnitEditor + + + + Editor + removeOnHide + org.eclipse.jdt.ui.CompilationUnitEditor + + + + Editor + removeOnHide + org.eclipse.jdt.ui.CompilationUnitEditor + + + + Editor + removeOnHide + org.eclipse.jdt.ui.CompilationUnitEditor + + + + Editor + removeOnHide + org.eclipse.jdt.ui.CompilationUnitEditor + + + + Editor + removeOnHide + org.eclipse.jdt.ui.CompilationUnitEditor + + + + Editor + removeOnHide + org.eclipse.jdt.ui.CompilationUnitEditor + + + + Editor + removeOnHide + org.eclipse.jdt.ui.CompilationUnitEditor + + + + Editor + removeOnHide + org.eclipse.jdt.ui.CompilationUnitEditor + + + + Editor + removeOnHide + org.eclipse.jdt.ui.CompilationUnitEditor + + + + Editor + removeOnHide + org.eclipse.jdt.ui.CompilationUnitEditor + + + + + + + + View + categoryTag:Java + + ViewMenu + menuContribution:menu + + + + + + + View + categoryTag:Java + + + + + View + categoryTag:General + + + + + + View + categoryTag:General + + ViewMenu + menuContribution:menu + + + + + + + View + categoryTag:Java + + + + + View + categoryTag:Java + + + + + View + categoryTag:General + + + + + + View + categoryTag:General + + ViewMenu + menuContribution:menu + + + + + + + View + categoryTag:General + + + + + View + categoryTag:General + + + + + + View + categoryTag:General + + ViewMenu + menuContribution:menu + + + + + + + View + categoryTag:General + + + + + View + categoryTag:General + + + + + + View + categoryTag:Mylyn + + ViewMenu + menuContribution:menu + + + + + + + View + categoryTag:Terminal + + + + + View + categoryTag:Java + + + + + View + categoryTag:Git + + + + + View + categoryTag:Java + + + + + View + categoryTag:Ant + + + + toolbarSeparator + + + + Draggable + + + + toolbarSeparator + + + + Draggable + + + + + toolbarSeparator + + + + Draggable + + + Draggable + + + Draggable + + + Draggable + + + toolbarSeparator + + + + Draggable + + + + toolbarSeparator + + + + toolbarSeparator + + + + Draggable + + + stretch + SHOW_RESTORE_MENU + + + Draggable + HIDEABLE + SHOW_RESTORE_MENU + + + + + stretch + + + Draggable + + + Draggable + + + + + TrimStack + Draggable + + + TrimStack + Draggable + + + + + TrimStack + Draggable + + + TrimStack + Draggable + + + + + + + + + + + + + + + + + platform:gtk + + + + + + platform:gtk + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + platform:gtk + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Editor + removeOnHide + + + + + View + categoryTag:Ant + + + + + View + categoryTag:Gradle + + + + + View + categoryTag:Gradle + + + + + View + categoryTag:Debug + + + + + View + categoryTag:Debug + + + + + View + categoryTag:Debug + + + + + View + categoryTag:Debug + + + + + View + categoryTag:Debug + + + + + View + categoryTag:Debug + + + + + View + categoryTag:Debug + + + View + categoryTag:Debug + + + + + View + categoryTag:Java + + + + + View + categoryTag:Git + + + + + View + categoryTag:Git + + + + + View + categoryTag:Git + + + + + View + categoryTag:Git + NoRestore + + + + + View + categoryTag:Git + + + + + View + categoryTag:Help + + + + + View + categoryTag:Java + + + + + View + categoryTag:Java + + + + + View + categoryTag:Debug + + + + + View + categoryTag:Java + + + + + View + categoryTag:Java + + + + + View + categoryTag:Java + + + + + View + categoryTag:Java Browsing + + + + + View + categoryTag:Java Browsing + + + + + View + categoryTag:Java Browsing + + + + + View + categoryTag:Java Browsing + + + + + View + categoryTag:Java + + + + + View + categoryTag:General + + + + + View + categoryTag:Java + + + + + View + categoryTag:Java + + + + + View + categoryTag:Language Servers + + + + + View + categoryTag:Language Servers + + + + + View + categoryTag:Language Servers + + + + + View + categoryTag:Maven + + + + + View + categoryTag:Maven + + + + + View + categoryTag:Maven + + + + + View + categoryTag:Mylyn + + + + + View + categoryTag:Mylyn + + + + + View + categoryTag:Mylyn + + + + + View + categoryTag:Mylyn + + + + + View + categoryTag:Mylyn + + + + + View + categoryTag:Mylyn + + + + + View + categoryTag:Oomph + + + + + View + categoryTag:Oomph + NoRestore + + + + + View + categoryTag:Plug-in Development + + + + + View + categoryTag:General + + + + + View + categoryTag:Version Control (Team) + + + + + View + categoryTag:Version Control (Team) + + + + + View + categoryTag:Terminal + + + View + categoryTag:Help + + + + + View + categoryTag:General + + + + + View + categoryTag:General + + + + + View + categoryTag:Help + + + + + View + categoryTag:General + + + + + View + categoryTag:General + + + + + View + categoryTag:General + + + + + View + categoryTag:General + + + + + View + categoryTag:General + + + + + View + categoryTag:General + + + + + View + categoryTag:General + + + + + View + categoryTag:General + + + + + View + categoryTag:General + + + + + View + categoryTag:General + + + + + View + categoryTag:General + + + + glue + move_after:PerspectiveSpacer + SHOW_RESTORE_MENU + + + move_after:Spacer Glue + HIDEABLE + SHOW_RESTORE_MENU + + + glue + move_after:SearchField + SHOW_RESTORE_MENU + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/.metadata/.plugins/org.eclipse.egit.core/.org.eclipse.egit.core.cmp/.project b/.metadata/.plugins/org.eclipse.egit.core/.org.eclipse.egit.core.cmp/.project new file mode 100644 index 0000000..3c10856 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.egit.core/.org.eclipse.egit.core.cmp/.project @@ -0,0 +1,11 @@ + + + .org.eclipse.egit.core.cmp + + + + + + + + diff --git a/.metadata/.plugins/org.eclipse.egit.core/.org.eclipse.egit.core.cmp/.settings/org.eclipse.core.resources.prefs b/.metadata/.plugins/org.eclipse.egit.core/.org.eclipse.egit.core.cmp/.settings/org.eclipse.core.resources.prefs new file mode 100644 index 0000000..99f26c0 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.egit.core/.org.eclipse.egit.core.cmp/.settings/org.eclipse.core.resources.prefs @@ -0,0 +1,2 @@ +eclipse.preferences.version=1 +encoding/=UTF-8 diff --git a/.metadata/.plugins/org.eclipse.jdt.core/1241313270.index b/.metadata/.plugins/org.eclipse.jdt.core/1241313270.index new file mode 100644 index 0000000..2088f50 Binary files /dev/null and b/.metadata/.plugins/org.eclipse.jdt.core/1241313270.index differ diff --git a/.metadata/.plugins/org.eclipse.jdt.core/1568060524.index b/.metadata/.plugins/org.eclipse.jdt.core/1568060524.index new file mode 100644 index 0000000..fccb1f4 Binary files /dev/null and b/.metadata/.plugins/org.eclipse.jdt.core/1568060524.index differ diff --git a/.metadata/.plugins/org.eclipse.jdt.core/1865797976.index b/.metadata/.plugins/org.eclipse.jdt.core/1865797976.index new file mode 100644 index 0000000..69aee0b Binary files /dev/null and b/.metadata/.plugins/org.eclipse.jdt.core/1865797976.index differ diff --git a/.metadata/.plugins/org.eclipse.jdt.core/206920101.index b/.metadata/.plugins/org.eclipse.jdt.core/206920101.index new file mode 100644 index 0000000..f771e25 Binary files /dev/null and b/.metadata/.plugins/org.eclipse.jdt.core/206920101.index differ diff --git a/.metadata/.plugins/org.eclipse.jdt.core/263131634.index b/.metadata/.plugins/org.eclipse.jdt.core/263131634.index new file mode 100644 index 0000000..9eec7a3 Binary files /dev/null and b/.metadata/.plugins/org.eclipse.jdt.core/263131634.index differ diff --git a/.metadata/.plugins/org.eclipse.jdt.core/4139034169.index b/.metadata/.plugins/org.eclipse.jdt.core/4139034169.index new file mode 100644 index 0000000..8b25348 Binary files /dev/null and b/.metadata/.plugins/org.eclipse.jdt.core/4139034169.index differ diff --git a/.metadata/.plugins/org.eclipse.jdt.core/assumedExternalFilesCache b/.metadata/.plugins/org.eclipse.jdt.core/assumedExternalFilesCache new file mode 100644 index 0000000..593f470 Binary files /dev/null and b/.metadata/.plugins/org.eclipse.jdt.core/assumedExternalFilesCache differ diff --git a/.metadata/.plugins/org.eclipse.jdt.core/externalFilesCache b/.metadata/.plugins/org.eclipse.jdt.core/externalFilesCache new file mode 100644 index 0000000..5f86ebe Binary files /dev/null and b/.metadata/.plugins/org.eclipse.jdt.core/externalFilesCache differ diff --git a/.metadata/.plugins/org.eclipse.jdt.core/externalLibsTimeStamps b/.metadata/.plugins/org.eclipse.jdt.core/externalLibsTimeStamps new file mode 100644 index 0000000..657f85f Binary files /dev/null and b/.metadata/.plugins/org.eclipse.jdt.core/externalLibsTimeStamps differ diff --git a/.metadata/.plugins/org.eclipse.jdt.core/indexNamesMap.txt b/.metadata/.plugins/org.eclipse.jdt.core/indexNamesMap.txt new file mode 100644 index 0000000..5f7d61c --- /dev/null +++ b/.metadata/.plugins/org.eclipse.jdt.core/indexNamesMap.txt @@ -0,0 +1 @@ +INDEX VERSION 1.134 diff --git a/.metadata/.plugins/org.eclipse.jdt.core/javaLikeNames.txt b/.metadata/.plugins/org.eclipse.jdt.core/javaLikeNames.txt new file mode 100644 index 0000000..8586397 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.jdt.core/javaLikeNames.txt @@ -0,0 +1 @@ +java \ No newline at end of file diff --git a/.metadata/.plugins/org.eclipse.jdt.core/nonChainingJarsCache b/.metadata/.plugins/org.eclipse.jdt.core/nonChainingJarsCache new file mode 100644 index 0000000..be8039f Binary files /dev/null and b/.metadata/.plugins/org.eclipse.jdt.core/nonChainingJarsCache differ diff --git a/.metadata/.plugins/org.eclipse.jdt.core/savedIndexNames.txt b/.metadata/.plugins/org.eclipse.jdt.core/savedIndexNames.txt new file mode 100644 index 0000000..894546b --- /dev/null +++ b/.metadata/.plugins/org.eclipse.jdt.core/savedIndexNames.txt @@ -0,0 +1,4 @@ +INDEX VERSION 1.134+/home/Kotama_Chio/Musique/SillyBlahaj.org/Java/.metadata/.plugins/org.eclipse.jdt.core +263131634.index +206920101.index +1865797976.index diff --git a/.metadata/.plugins/org.eclipse.jdt.core/variablesAndContainers.dat b/.metadata/.plugins/org.eclipse.jdt.core/variablesAndContainers.dat new file mode 100644 index 0000000..dc7501e Binary files /dev/null and b/.metadata/.plugins/org.eclipse.jdt.core/variablesAndContainers.dat differ diff --git a/.metadata/.plugins/org.eclipse.jdt.debug.ui/dialog_settings.xml b/.metadata/.plugins/org.eclipse.jdt.debug.ui/dialog_settings.xml new file mode 100644 index 0000000..e4fff30 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.jdt.debug.ui/dialog_settings.xml @@ -0,0 +1,14 @@ + +
+
+ + +
+ + + + + +
+
+
diff --git a/.metadata/.plugins/org.eclipse.jdt.launching/.install.xml b/.metadata/.plugins/org.eclipse.jdt.launching/.install.xml new file mode 100644 index 0000000..1b24159 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.jdt.launching/.install.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/.metadata/.plugins/org.eclipse.jdt.launching/libraryInfos.xml b/.metadata/.plugins/org.eclipse.jdt.launching/libraryInfos.xml new file mode 100644 index 0000000..523ff82 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.jdt.launching/libraryInfos.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/.metadata/.plugins/org.eclipse.jdt.ui/OpenTypeHistory.xml b/.metadata/.plugins/org.eclipse.jdt.ui/OpenTypeHistory.xml new file mode 100644 index 0000000..a4ee3cb --- /dev/null +++ b/.metadata/.plugins/org.eclipse.jdt.ui/OpenTypeHistory.xml @@ -0,0 +1,2 @@ + + diff --git a/.metadata/.plugins/org.eclipse.jdt.ui/QualifiedTypeNameHistory.xml b/.metadata/.plugins/org.eclipse.jdt.ui/QualifiedTypeNameHistory.xml new file mode 100644 index 0000000..7f09b61 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.jdt.ui/QualifiedTypeNameHistory.xml @@ -0,0 +1,4 @@ + + + + diff --git a/.metadata/.plugins/org.eclipse.jdt.ui/dialog_settings.xml b/.metadata/.plugins/org.eclipse.jdt.ui/dialog_settings.xml new file mode 100644 index 0000000..f5ad79f --- /dev/null +++ b/.metadata/.plugins/org.eclipse.jdt.ui/dialog_settings.xml @@ -0,0 +1,95 @@ + +
+ + + +
+ + + + + +
+
+ + + + + +
+
+
+
+
+
+
+
+ + + + + +
+
+ +
+
+ + + + + +
+
+ +
+
+ + +
+
+ +
+
+ +
+
+ + + + + +
+
+ + + + + +
+
+ +
+
+ + + + + + + + + + + + + +
+ + + + + +
+
+
diff --git a/.metadata/.plugins/org.eclipse.ltk.core.refactoring/.refactorings/.workspace/2026/8/34/refactorings.history b/.metadata/.plugins/org.eclipse.ltk.core.refactoring/.refactorings/.workspace/2026/8/34/refactorings.history new file mode 100644 index 0000000..f9a2b3d --- /dev/null +++ b/.metadata/.plugins/org.eclipse.ltk.core.refactoring/.refactorings/.workspace/2026/8/34/refactorings.history @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/.metadata/.plugins/org.eclipse.ltk.core.refactoring/.refactorings/.workspace/2026/8/34/refactorings.index b/.metadata/.plugins/org.eclipse.ltk.core.refactoring/.refactorings/.workspace/2026/8/34/refactorings.index new file mode 100644 index 0000000..2ef469c --- /dev/null +++ b/.metadata/.plugins/org.eclipse.ltk.core.refactoring/.refactorings/.workspace/2026/8/34/refactorings.index @@ -0,0 +1,2 @@ +1786993209462 Delete resource 'Server_Tools' +1786993251215 Delete resource 'idk' diff --git a/.metadata/.plugins/org.eclipse.ltk.core.refactoring/.refactorings/.workspace/2026/8/35/refactorings.history b/.metadata/.plugins/org.eclipse.ltk.core.refactoring/.refactorings/.workspace/2026/8/35/refactorings.history new file mode 100644 index 0000000..84c0aed --- /dev/null +++ b/.metadata/.plugins/org.eclipse.ltk.core.refactoring/.refactorings/.workspace/2026/8/35/refactorings.history @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/.metadata/.plugins/org.eclipse.ltk.core.refactoring/.refactorings/.workspace/2026/8/35/refactorings.index b/.metadata/.plugins/org.eclipse.ltk.core.refactoring/.refactorings/.workspace/2026/8/35/refactorings.index new file mode 100644 index 0000000..56d59a8 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.ltk.core.refactoring/.refactorings/.workspace/2026/8/35/refactorings.index @@ -0,0 +1,2 @@ +1788001726694 Delete resource 'SillyBlahaj.org' +1788001731551 Delete resource 'sillyblahaj.org.api' diff --git a/.metadata/.plugins/org.eclipse.ltk.core.refactoring/.refactorings/Server_Tools/2026/8/32/refactorings.history b/.metadata/.plugins/org.eclipse.ltk.core.refactoring/.refactorings/Server_Tools/2026/8/32/refactorings.history new file mode 100644 index 0000000..64cdeb0 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.ltk.core.refactoring/.refactorings/Server_Tools/2026/8/32/refactorings.history @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/.metadata/.plugins/org.eclipse.ltk.core.refactoring/.refactorings/Server_Tools/2026/8/32/refactorings.index b/.metadata/.plugins/org.eclipse.ltk.core.refactoring/.refactorings/Server_Tools/2026/8/32/refactorings.index new file mode 100644 index 0000000..d9cb37d --- /dev/null +++ b/.metadata/.plugins/org.eclipse.ltk.core.refactoring/.refactorings/Server_Tools/2026/8/32/refactorings.index @@ -0,0 +1 @@ +1786115522753 Delete element diff --git a/.metadata/.plugins/org.eclipse.ltk.core.refactoring/.refactorings/SillyBlahaj.org/2026/8/34/refactorings.history b/.metadata/.plugins/org.eclipse.ltk.core.refactoring/.refactorings/SillyBlahaj.org/2026/8/34/refactorings.history new file mode 100644 index 0000000..8258174 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.ltk.core.refactoring/.refactorings/SillyBlahaj.org/2026/8/34/refactorings.history @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/.metadata/.plugins/org.eclipse.ltk.core.refactoring/.refactorings/SillyBlahaj.org/2026/8/34/refactorings.index b/.metadata/.plugins/org.eclipse.ltk.core.refactoring/.refactorings/SillyBlahaj.org/2026/8/34/refactorings.index new file mode 100644 index 0000000..71acb50 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.ltk.core.refactoring/.refactorings/SillyBlahaj.org/2026/8/34/refactorings.index @@ -0,0 +1,11 @@ +1787003547805 Move compilation unit +1787004026720 Delete element +1787086316615 Delete element +1787086680134 Delete element +1787086715279 Delete element +1787087349652 Delete element +1787087412965 Delete element +1787087630500 Delete element +1787088913981 Delete element +1787135828449 Copy package +1787136070332 Move package diff --git a/.metadata/.plugins/org.eclipse.ltk.core.refactoring/.refactorings/sillyblahaj.org.api/2026/8/34/refactorings.history b/.metadata/.plugins/org.eclipse.ltk.core.refactoring/.refactorings/sillyblahaj.org.api/2026/8/34/refactorings.history new file mode 100644 index 0000000..63faebc --- /dev/null +++ b/.metadata/.plugins/org.eclipse.ltk.core.refactoring/.refactorings/sillyblahaj.org.api/2026/8/34/refactorings.history @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/.metadata/.plugins/org.eclipse.ltk.core.refactoring/.refactorings/sillyblahaj.org.api/2026/8/34/refactorings.index b/.metadata/.plugins/org.eclipse.ltk.core.refactoring/.refactorings/sillyblahaj.org.api/2026/8/34/refactorings.index new file mode 100644 index 0000000..c1d2e09 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.ltk.core.refactoring/.refactorings/sillyblahaj.org.api/2026/8/34/refactorings.index @@ -0,0 +1,6 @@ +1787136089759 Delete element +1787136131910 Delete element +1787136139846 Delete element +1787137818041 Copy package +1787138172148 Delete element +1787141457497 Delete element diff --git a/.metadata/.plugins/org.eclipse.ltk.ui.refactoring/dialog_settings.xml b/.metadata/.plugins/org.eclipse.ltk.ui.refactoring/dialog_settings.xml new file mode 100644 index 0000000..5635cae --- /dev/null +++ b/.metadata/.plugins/org.eclipse.ltk.ui.refactoring/dialog_settings.xml @@ -0,0 +1,16 @@ + +
+
+ + +
+
+ + +
+
+ + + +
+
diff --git a/.metadata/.plugins/org.eclipse.m2e.core/workspaceState.ser b/.metadata/.plugins/org.eclipse.m2e.core/workspaceState.ser new file mode 100644 index 0000000..abbf8e5 Binary files /dev/null and b/.metadata/.plugins/org.eclipse.m2e.core/workspaceState.ser differ diff --git a/.metadata/.plugins/org.eclipse.m2e.logback/0.log b/.metadata/.plugins/org.eclipse.m2e.logback/0.log new file mode 100644 index 0000000..6cc56a3 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.m2e.logback/0.log @@ -0,0 +1,16 @@ +2026-08-06 03:25:57,828 [Worker-6: Loading available Gradle versions] INFO o.e.b.c.i.u.g.PublishedGradleVersions - Gradle version information cache is up-to-date. Trying to read. +2026-08-07 17:09:14,971 [Worker-1: Loading available Gradle versions] INFO o.e.b.c.i.u.g.PublishedGradleVersions - Gradle version information cache is out-of-date. Trying to update. +2026-08-17 20:59:41,357 [Worker-8: Loading available Gradle versions] INFO o.e.b.c.i.u.g.PublishedGradleVersions - Gradle version information cache is out-of-date. Trying to update. +2026-08-18 21:13:04,377 [Worker-5: Loading available Gradle versions] INFO o.e.b.c.i.u.g.PublishedGradleVersions - Gradle version information cache is out-of-date. Trying to update. +2026-08-19 12:16:41,813 [Worker-7: Loading available Gradle versions] INFO o.e.b.c.i.u.g.PublishedGradleVersions - Gradle version information cache is up-to-date. Trying to read. +2026-08-20 12:29:25,086 [Worker-7: Loading available Gradle versions] INFO o.e.b.c.i.u.g.PublishedGradleVersions - Gradle version information cache is out-of-date. Trying to update. +2026-08-21 20:50:13,186 [Worker-7: Loading available Gradle versions] INFO o.e.b.c.i.u.g.PublishedGradleVersions - Gradle version information cache is out-of-date. Trying to update. +2026-08-23 17:30:57,503 [Worker-2: Loading available Gradle versions] INFO o.e.b.c.i.u.g.PublishedGradleVersions - Gradle version information cache is out-of-date. Trying to update. +2026-08-23 22:16:38,006 [Worker-7: Loading available Gradle versions] INFO o.e.b.c.i.u.g.PublishedGradleVersions - Gradle version information cache is up-to-date. Trying to read. +2026-08-23 23:33:04,756 [Worker-7: Loading available Gradle versions] INFO o.e.b.c.i.u.g.PublishedGradleVersions - Gradle version information cache is up-to-date. Trying to read. +2026-08-24 20:42:32,234 [Worker-8: Loading available Gradle versions] INFO o.e.b.c.i.u.g.PublishedGradleVersions - Gradle version information cache is out-of-date. Trying to update. +2026-08-25 20:25:27,230 [Worker-6: Loading available Gradle versions] INFO o.e.b.c.i.u.g.PublishedGradleVersions - Gradle version information cache is up-to-date. Trying to read. +2026-08-27 20:19:21,004 [Worker-8: Loading available Gradle versions] INFO o.e.b.c.i.u.g.PublishedGradleVersions - Gradle version information cache is out-of-date. Trying to update. +2026-08-28 21:24:21,650 [Worker-5: Loading available Gradle versions] INFO o.e.b.c.i.u.g.PublishedGradleVersions - Gradle version information cache is out-of-date. Trying to update. +2026-08-29 13:04:25,454 [Worker-9: Loading available Gradle versions] INFO o.e.b.c.i.u.g.PublishedGradleVersions - Gradle version information cache is up-to-date. Trying to read. +2026-08-29 13:08:26,670 [Worker-6: Loading available Gradle versions] INFO o.e.b.c.i.u.g.PublishedGradleVersions - Gradle version information cache is up-to-date. Trying to read. diff --git a/.metadata/.plugins/org.eclipse.m2e.logback/logback.2.7.101.20251017-1242.xml b/.metadata/.plugins/org.eclipse.m2e.logback/logback.2.7.101.20251017-1242.xml new file mode 100644 index 0000000..9effde7 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.m2e.logback/logback.2.7.101.20251017-1242.xml @@ -0,0 +1,41 @@ + + + + %date [%thread] %-5level %logger{35} - %msg%n + + + ${org.eclipse.m2e.log.console.threshold:-OFF} + + + + + ${org.eclipse.m2e.log.dir}/0.log + + ${org.eclipse.m2e.log.dir}/%i.log + 1 + 10 + + + 10MB + + + %date [%thread] %-5level %logger{35} - %msg%n + + + + + + WARN + + + + + + + + + + + + + diff --git a/.metadata/.plugins/org.eclipse.mylyn.github.ui/avatars.ser b/.metadata/.plugins/org.eclipse.mylyn.github.ui/avatars.ser new file mode 100644 index 0000000..1e9a069 Binary files /dev/null and b/.metadata/.plugins/org.eclipse.mylyn.github.ui/avatars.ser differ diff --git a/.metadata/.plugins/org.eclipse.oomph.setup/workspace.setup b/.metadata/.plugins/org.eclipse.oomph.setup/workspace.setup new file mode 100644 index 0000000..1f73e14 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.oomph.setup/workspace.setup @@ -0,0 +1,6 @@ + + diff --git a/.metadata/.plugins/org.eclipse.team.ui/dialog_settings.xml b/.metadata/.plugins/org.eclipse.team.ui/dialog_settings.xml new file mode 100644 index 0000000..57197e1 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.team.ui/dialog_settings.xml @@ -0,0 +1,5 @@ + +
+
+
+
diff --git a/.metadata/.plugins/org.eclipse.tips.ide/dialog_settings.xml b/.metadata/.plugins/org.eclipse.tips.ide/dialog_settings.xml new file mode 100644 index 0000000..5ca0b77 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.tips.ide/dialog_settings.xml @@ -0,0 +1,3 @@ + +
+
diff --git a/.metadata/.plugins/org.eclipse.ui.ide/dialog_settings.xml b/.metadata/.plugins/org.eclipse.ui.ide/dialog_settings.xml new file mode 100644 index 0000000..7772e40 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.ui.ide/dialog_settings.xml @@ -0,0 +1,42 @@ + +
+
+ + + + + + + + +
+ + + + + +
+
+
+ + + + + + + + + + + + + +
+ + + + + +
+
+
diff --git a/.metadata/.plugins/org.eclipse.ui.intro/introstate b/.metadata/.plugins/org.eclipse.ui.intro/introstate new file mode 100644 index 0000000..02f134f --- /dev/null +++ b/.metadata/.plugins/org.eclipse.ui.intro/introstate @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/.metadata/.plugins/org.eclipse.ui.workbench.texteditor/dialog_settings.xml b/.metadata/.plugins/org.eclipse.ui.workbench.texteditor/dialog_settings.xml new file mode 100644 index 0000000..0cf7b95 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.ui.workbench.texteditor/dialog_settings.xml @@ -0,0 +1,9 @@ + +
+
+ + + + +
+
diff --git a/.metadata/.plugins/org.eclipse.ui.workbench/dialog_settings.xml b/.metadata/.plugins/org.eclipse.ui.workbench/dialog_settings.xml new file mode 100644 index 0000000..7d9debc --- /dev/null +++ b/.metadata/.plugins/org.eclipse.ui.workbench/dialog_settings.xml @@ -0,0 +1,27 @@ + +
+
+ + + + + +
+
+ + + + + + + + +
+ + + + + +
+
+
diff --git a/.metadata/.plugins/org.eclipse.ui.workbench/workingsets.xml b/.metadata/.plugins/org.eclipse.ui.workbench/workingsets.xml new file mode 100644 index 0000000..0acdef4 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.ui.workbench/workingsets.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/.metadata/version.ini b/.metadata/version.ini new file mode 100644 index 0000000..b9eddbc --- /dev/null +++ b/.metadata/version.ini @@ -0,0 +1,3 @@ +#Sat Aug 29 13:08:22 CEST 2026 +org.eclipse.core.runtime=2 +org.eclipse.platform=4.40.0.v20260601-0713 diff --git a/SillyJirafe.org/.classpath b/SillyJirafe.org/.classpath new file mode 100644 index 0000000..62ce2ad --- /dev/null +++ b/SillyJirafe.org/.classpath @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/SillyJirafe.org/.project b/SillyJirafe.org/.project new file mode 100644 index 0000000..8159944 --- /dev/null +++ b/SillyJirafe.org/.project @@ -0,0 +1,17 @@ + + + SillyBlahaj.org + + + + + + org.eclipse.jdt.core.javabuilder + + + + + + org.eclipse.jdt.core.javanature + + diff --git a/SillyJirafe.org/.settings/org.eclipse.core.resources.prefs b/SillyJirafe.org/.settings/org.eclipse.core.resources.prefs new file mode 100644 index 0000000..99f26c0 --- /dev/null +++ b/SillyJirafe.org/.settings/org.eclipse.core.resources.prefs @@ -0,0 +1,2 @@ +eclipse.preferences.version=1 +encoding/=UTF-8 diff --git a/SillyJirafe.org/.settings/org.eclipse.jdt.core.prefs b/SillyJirafe.org/.settings/org.eclipse.jdt.core.prefs new file mode 100644 index 0000000..9a7984b --- /dev/null +++ b/SillyJirafe.org/.settings/org.eclipse.jdt.core.prefs @@ -0,0 +1,11 @@ +eclipse.preferences.version=1 +org.eclipse.jdt.core.compiler.codegen.targetPlatform=21 +org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve +org.eclipse.jdt.core.compiler.compliance=21 +org.eclipse.jdt.core.compiler.debug.lineNumber=generate +org.eclipse.jdt.core.compiler.debug.localVariable=generate +org.eclipse.jdt.core.compiler.debug.sourceFile=generate +org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures=disabled +org.eclipse.jdt.core.compiler.problem.reportPreviewFeatures=warning +org.eclipse.jdt.core.compiler.release=enabled +org.eclipse.jdt.core.compiler.source=21 diff --git a/SillyJirafe.org/bin/module-info.class b/SillyJirafe.org/bin/module-info.class new file mode 100644 index 0000000..dc8ca4e Binary files /dev/null and b/SillyJirafe.org/bin/module-info.class differ diff --git a/SillyJirafe.org/bin/org/sillyjirafe/db/Crawl_StateDB.class b/SillyJirafe.org/bin/org/sillyjirafe/db/Crawl_StateDB.class new file mode 100644 index 0000000..2efa397 Binary files /dev/null and b/SillyJirafe.org/bin/org/sillyjirafe/db/Crawl_StateDB.class differ diff --git a/SillyJirafe.org/bin/org/sillyjirafe/db/ElementsDB.class b/SillyJirafe.org/bin/org/sillyjirafe/db/ElementsDB.class new file mode 100644 index 0000000..bcfe36b Binary files /dev/null and b/SillyJirafe.org/bin/org/sillyjirafe/db/ElementsDB.class differ diff --git a/SillyJirafe.org/bin/org/sillyjirafe/linker/Main.class b/SillyJirafe.org/bin/org/sillyjirafe/linker/Main.class new file mode 100644 index 0000000..8399962 Binary files /dev/null and b/SillyJirafe.org/bin/org/sillyjirafe/linker/Main.class differ diff --git a/SillyJirafe.org/bin/org/sillyjirafe/uoapi/Api.class b/SillyJirafe.org/bin/org/sillyjirafe/uoapi/Api.class new file mode 100644 index 0000000..b3db3a4 Binary files /dev/null and b/SillyJirafe.org/bin/org/sillyjirafe/uoapi/Api.class differ diff --git a/SillyJirafe.org/bin/org/sillyjirafe/uoapi/Caller.class b/SillyJirafe.org/bin/org/sillyjirafe/uoapi/Caller.class new file mode 100644 index 0000000..21c3336 Binary files /dev/null and b/SillyJirafe.org/bin/org/sillyjirafe/uoapi/Caller.class differ diff --git a/SillyJirafe.org/bin/org/sillyjirafe/uoapi/Out.class b/SillyJirafe.org/bin/org/sillyjirafe/uoapi/Out.class new file mode 100644 index 0000000..e67a5e9 Binary files /dev/null and b/SillyJirafe.org/bin/org/sillyjirafe/uoapi/Out.class differ diff --git a/SillyJirafe.org/bin/org/sillyjirafe/uoapi/binds/GitHubApacheApi.class b/SillyJirafe.org/bin/org/sillyjirafe/uoapi/binds/GitHubApacheApi.class new file mode 100644 index 0000000..c720ee1 Binary files /dev/null and b/SillyJirafe.org/bin/org/sillyjirafe/uoapi/binds/GitHubApacheApi.class differ diff --git a/SillyJirafe.org/bin/org/sillyjirafe/uoapi/binds/GitHubLGPLApi.class b/SillyJirafe.org/bin/org/sillyjirafe/uoapi/binds/GitHubLGPLApi.class new file mode 100644 index 0000000..a7343f9 Binary files /dev/null and b/SillyJirafe.org/bin/org/sillyjirafe/uoapi/binds/GitHubLGPLApi.class differ diff --git a/SillyJirafe.org/bin/org/sillyjirafe/uoapi/binds/GitHubMITApi.class b/SillyJirafe.org/bin/org/sillyjirafe/uoapi/binds/GitHubMITApi.class new file mode 100644 index 0000000..1db62e5 Binary files /dev/null and b/SillyJirafe.org/bin/org/sillyjirafe/uoapi/binds/GitHubMITApi.class differ diff --git a/SillyJirafe.org/bin/org/sillyjirafe/uoapi/binds/OpenVerseAudiosApi.class b/SillyJirafe.org/bin/org/sillyjirafe/uoapi/binds/OpenVerseAudiosApi.class new file mode 100644 index 0000000..b5c2cf6 Binary files /dev/null and b/SillyJirafe.org/bin/org/sillyjirafe/uoapi/binds/OpenVerseAudiosApi.class differ diff --git a/SillyJirafe.org/bin/org/sillyjirafe/uoapi/binds/OpenVerseImagesApi.class b/SillyJirafe.org/bin/org/sillyjirafe/uoapi/binds/OpenVerseImagesApi.class new file mode 100644 index 0000000..a62cf6b Binary files /dev/null and b/SillyJirafe.org/bin/org/sillyjirafe/uoapi/binds/OpenVerseImagesApi.class differ diff --git a/SillyJirafe.org/bin/org/sillyjirafe/uoapi/element.class b/SillyJirafe.org/bin/org/sillyjirafe/uoapi/element.class new file mode 100644 index 0000000..560bf65 Binary files /dev/null and b/SillyJirafe.org/bin/org/sillyjirafe/uoapi/element.class differ diff --git a/SillyJirafe.org/elements.db b/SillyJirafe.org/elements.db new file mode 100644 index 0000000..359b90b Binary files /dev/null and b/SillyJirafe.org/elements.db differ diff --git a/SillyJirafe.org/src/module-info.java b/SillyJirafe.org/src/module-info.java new file mode 100644 index 0000000..078d350 --- /dev/null +++ b/SillyJirafe.org/src/module-info.java @@ -0,0 +1,11 @@ +/** + * + */ +/** + * + */ +module SillyBlahaj.org { + requires java.sql; + requires java.net.http; + requires org.json; +} \ No newline at end of file diff --git a/SillyJirafe.org/src/org/sillyjirafe/db/Crawl_StateDB.java b/SillyJirafe.org/src/org/sillyjirafe/db/Crawl_StateDB.java new file mode 100644 index 0000000..d63a23a --- /dev/null +++ b/SillyJirafe.org/src/org/sillyjirafe/db/Crawl_StateDB.java @@ -0,0 +1,79 @@ +package org.sillyjirafe.db; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.PreparedStatement; +import java.sql.ResultSet; +import java.sql.SQLException; +import java.sql.Statement; + +public class Crawl_StateDB +{ + String URL = new String(); + String insertSql = "INSERT OR IGNORE INTO crawlstates (bind_name, last_page) VALUES (?, ?)"; + Connection connection; + + public Crawl_StateDB(String BDstr) throws SQLException + { + URL = BDstr; + connection = DriverManager.getConnection(URL); + } + + public void LinkToDB() throws SQLException + { + try (Statement stmt = connection.createStatement()) + { + stmt.execute(""" + CREATE TABLE IF NOT EXISTS crawlstates ( + bind_name TEXT PRIMARY KEY, + last_page INTEGER NOT NULL DEFAULT 1 + ) + """); + } + } + + public void AddEllement(String bind, int lastpage) throws SQLException + { + try (PreparedStatement ps = connection.prepareStatement(insertSql)) + { + ps.setString(1, bind); + ps.setInt(2, lastpage); + ps.executeUpdate(); + System.out.printf("%s is now page %d \n", bind, lastpage); + } + } + + public int getPage(String bindName) throws SQLException { + String sql = "SELECT last_page FROM crawlstates WHERE bind_name = ?"; + + try (PreparedStatement ps = connection.prepareStatement(sql)) { + ps.setString(1, bindName); + ResultSet rs = ps.executeQuery(); + + if (rs.next()) { + return rs.getInt("last_page"); + } else { + return 1; + } + } + } + public void updatePage(String bindName) throws SQLException { + String sql = """ + INSERT INTO crawlstates (bind_name, last_page) VALUES (?, 2) + ON CONFLICT(bind_name) DO UPDATE SET last_page = last_page + 1 + """; + + try (PreparedStatement ps = connection.prepareStatement(sql)) { + ps.setString(1, bindName); + ps.executeUpdate(); + } + } + + public void Close() throws SQLException + { + if (connection != null) + { + connection.close(); + } + } +} diff --git a/SillyJirafe.org/src/org/sillyjirafe/db/ElementsDB.java b/SillyJirafe.org/src/org/sillyjirafe/db/ElementsDB.java new file mode 100644 index 0000000..01fdcbb --- /dev/null +++ b/SillyJirafe.org/src/org/sillyjirafe/db/ElementsDB.java @@ -0,0 +1,56 @@ +package org.sillyjirafe.db; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.PreparedStatement; +import java.sql.SQLException; +import java.sql.Statement; + +public class ElementsDB { + String URL = new String(); + String insertSql = "INSERT OR IGNORE INTO creations (title, url, licence, source, type) VALUES (?, ?, ?, ?, ?)"; + Connection connection; + + public ElementsDB(String BDstr) throws SQLException + { + URL = BDstr; + connection = DriverManager.getConnection(URL); + } + + public void LinkToDB() throws SQLException + { + try (Statement stmt = connection.createStatement()) { + stmt.execute(""" + CREATE TABLE IF NOT EXISTS creations ( + id INTEGER PRIMARY KEY AUTOINCREMENT, + title TEXT NOT NULL, + url TEXT NOT NULL UNIQUE, + licence TEXT NOT NULL, + source TEXT NOT NULL, + type TEXT NOT NULL + ) + """); + } + } + + public void AddEllement(String title, String url, String licence, String source, String type) throws SQLException + { + try (PreparedStatement ps = connection.prepareStatement(insertSql)) { + ps.setString(1, title); + ps.setString(2, url); + ps.setString(3, licence); + ps.setString(4, source); + ps.setString(5, type); + ps.executeUpdate(); + System.out.printf("%s added \n", title); + } + } + + + public void Close() throws SQLException + { + if (connection != null) { + connection.close(); + } + } +} diff --git a/SillyJirafe.org/src/org/sillyjirafe/linker/Main.java b/SillyJirafe.org/src/org/sillyjirafe/linker/Main.java new file mode 100644 index 0000000..3d9f28a --- /dev/null +++ b/SillyJirafe.org/src/org/sillyjirafe/linker/Main.java @@ -0,0 +1,42 @@ +package org.sillyjirafe.linker; + +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +import org.sillyjirafe.db.Crawl_StateDB; +import org.sillyjirafe.db.ElementsDB; +import org.sillyjirafe.uoapi.*; + +public class Main { + public static void main(String[] args) throws Exception + { + Out Out = new Out(); + ElementsDB elementDB = new ElementsDB("jdbc:sqlite:elements.db"); + Crawl_StateDB crawlstateDB = new Crawl_StateDB("jdbc:sqlite:crawlstates.db"); + elementDB.LinkToDB(); + crawlstateDB.LinkToDB(); + + List bindNames = Out.PreOut(); + + Map pages = new HashMap<>(); + for (String nom : bindNames) { + pages.put(nom, crawlstateDB.getPage(nom)); + } + + List elements = Out.out(pages); + + for (int i = 0; i < elements.size(); i++) + { + element el = elements.get(i); + elementDB.AddEllement(el.title(), el.url(), el.licence(), el.source(), el.type()); + } + + for (String name : bindNames) { + crawlstateDB.updatePage(name); + } + + elementDB.Close(); + crawlstateDB.Close(); + } +} diff --git a/SillyJirafe.org/src/org/sillyjirafe/uoapi/Api.java b/SillyJirafe.org/src/org/sillyjirafe/uoapi/Api.java new file mode 100644 index 0000000..6254040 --- /dev/null +++ b/SillyJirafe.org/src/org/sillyjirafe/uoapi/Api.java @@ -0,0 +1,9 @@ +package org.sillyjirafe.uoapi; + +import java.util.List; + +public interface Api { + String getURL(int page); + public List Parse(String JsonRaw); + String getName(); +} diff --git a/SillyJirafe.org/src/org/sillyjirafe/uoapi/Caller.java b/SillyJirafe.org/src/org/sillyjirafe/uoapi/Caller.java new file mode 100644 index 0000000..7418d30 --- /dev/null +++ b/SillyJirafe.org/src/org/sillyjirafe/uoapi/Caller.java @@ -0,0 +1,23 @@ +package org.sillyjirafe.uoapi; + +import java.net.URI; +import java.net.http.HttpClient; +import java.net.http.HttpRequest; +import java.net.http.HttpResponse; +import java.util.List; + +public class Caller { + public static List CallApi(Api api, int page) throws Exception + { + HttpClient client = HttpClient.newHttpClient(); + + HttpRequest request = HttpRequest.newBuilder() + .uri(URI.create(api.getURL(page))) + .GET() + .build(); + + HttpResponse response = client.send(request, HttpResponse.BodyHandlers.ofString()); + + return api.Parse(response.body()); + } +} diff --git a/SillyJirafe.org/src/org/sillyjirafe/uoapi/Out.java b/SillyJirafe.org/src/org/sillyjirafe/uoapi/Out.java new file mode 100644 index 0000000..fc8aa8f --- /dev/null +++ b/SillyJirafe.org/src/org/sillyjirafe/uoapi/Out.java @@ -0,0 +1,49 @@ +package org.sillyjirafe.uoapi; + +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +import org.sillyjirafe.uoapi.binds.GitHubApacheApi; +import org.sillyjirafe.uoapi.binds.GitHubLGPLApi; +import org.sillyjirafe.uoapi.binds.GitHubMITApi; +import org.sillyjirafe.uoapi.binds.OpenVerseAudiosApi; +import org.sillyjirafe.uoapi.binds.OpenVerseImagesApi; + +public class Out { + List Apis = new ArrayList<>(); + + public List PreOut() + { + Apis.add(new GitHubMITApi()); + Apis.add(new GitHubLGPLApi()); + Apis.add(new GitHubApacheApi()); + Apis.add(new OpenVerseImagesApi()); + Apis.add(new OpenVerseAudiosApi()); + + List bindnames = new ArrayList<>(); + + for (Api api : Apis) + { + bindnames.add(api.getName()); + } + + return bindnames; + } + + public List out(Map bindpages) throws Exception + { + List Elements = new ArrayList<>(); + + for (int i = 0; i < Apis.size(); i++) + { + List currentapi = Caller.CallApi(Apis.get(i), bindpages.get(Apis.get(i).getName())); + for (int j = 0; j < currentapi.size(); j++) + { + Elements.add(currentapi.get(j)); + } + } + return Elements; + } +} diff --git a/SillyJirafe.org/src/org/sillyjirafe/uoapi/binds/GitHubApacheApi.java b/SillyJirafe.org/src/org/sillyjirafe/uoapi/binds/GitHubApacheApi.java new file mode 100644 index 0000000..e58b68d --- /dev/null +++ b/SillyJirafe.org/src/org/sillyjirafe/uoapi/binds/GitHubApacheApi.java @@ -0,0 +1,44 @@ +package org.sillyjirafe.uoapi.binds; + +import java.util.ArrayList; +import java.util.List; + +import org.json.JSONArray; +import org.json.JSONObject; +import org.sillyjirafe.uoapi.Api; +import org.sillyjirafe.uoapi.element; + +public class GitHubApacheApi implements Api +{ + public String getName() + { + return "GitHubApacheApi"; + } + + public String getURL(int page) { + return "https://api.github.com/search/repositories?q=license:apache-2.0&page=" + page; + } + + public List Parse(String jsonRaw) { + List resultats = new ArrayList<>(); + + try { + JSONObject json = new JSONObject(jsonRaw); + JSONArray items = json.getJSONArray("items"); + + for (int i = 0; i < items.length(); i++) { + JSONObject repo = items.getJSONObject(i); + + String titre = repo.getString("full_name"); + String url = repo.getString("html_url"); + String licence = repo.getJSONObject("license").getString("spdx_id"); + + resultats.add(new element(titre, url, licence, "github", "code")); + } + } catch (org.json.JSONException e) { + System.out.println("error but continue : " + e.getMessage()); + } + + return resultats; + } +} diff --git a/SillyJirafe.org/src/org/sillyjirafe/uoapi/binds/GitHubLGPLApi.java b/SillyJirafe.org/src/org/sillyjirafe/uoapi/binds/GitHubLGPLApi.java new file mode 100644 index 0000000..ef8cacc --- /dev/null +++ b/SillyJirafe.org/src/org/sillyjirafe/uoapi/binds/GitHubLGPLApi.java @@ -0,0 +1,45 @@ +package org.sillyjirafe.uoapi.binds; + +import java.util.ArrayList; +import java.util.List; + +import org.json.JSONArray; +import org.json.JSONObject; +import org.sillyjirafe.uoapi.Api; +import org.sillyjirafe.uoapi.element; + +public class GitHubLGPLApi implements Api +{ + + public String getName() + { + return "GitHubLGPLApi"; + } + + public String getURL(int page) { + return "https://api.github.com/search/repositories?q=license:lgpl-3.0&page=" + page; + } + + public List Parse(String jsonRaw) { + List resultats = new ArrayList<>(); + + try { + JSONObject json = new JSONObject(jsonRaw); + JSONArray items = json.getJSONArray("items"); + + for (int i = 0; i < items.length(); i++) { + JSONObject repo = items.getJSONObject(i); + + String titre = repo.getString("full_name"); + String url = repo.getString("html_url"); + String licence = repo.getJSONObject("license").getString("spdx_id"); + + resultats.add(new element(titre, url, licence, "github", "code")); + } + } catch (org.json.JSONException e) { + System.out.println("error but continue : " + e.getMessage()); + } + + return resultats; + } +} diff --git a/SillyJirafe.org/src/org/sillyjirafe/uoapi/binds/GitHubMITApi.java b/SillyJirafe.org/src/org/sillyjirafe/uoapi/binds/GitHubMITApi.java new file mode 100644 index 0000000..a0a0e15 --- /dev/null +++ b/SillyJirafe.org/src/org/sillyjirafe/uoapi/binds/GitHubMITApi.java @@ -0,0 +1,45 @@ +package org.sillyjirafe.uoapi.binds; + +import org.json.JSONArray; +import org.json.JSONObject; +import org.sillyjirafe.uoapi.Api; +import org.sillyjirafe.uoapi.element; +import java.util.ArrayList; +import java.util.List; + +public class GitHubMITApi implements Api +{ + + public String getName() + { + return "GitHubMITApi"; + } + + public String getURL(int page) { + return "https://api.github.com/search/repositories?q=license:mit&page=" + page; + } + + public List Parse(String jsonRaw) { + List resultats = new ArrayList<>(); + + + try { + JSONObject json = new JSONObject(jsonRaw); + JSONArray items = json.getJSONArray("items"); + + for (int i = 0; i < items.length(); i++) { + JSONObject repo = items.getJSONObject(i); + + String titre = repo.getString("full_name"); + String url = repo.getString("html_url"); + String licence = repo.getJSONObject("license").getString("spdx_id"); + + resultats.add(new element(titre, url, licence, "github", "code")); + } + } catch (org.json.JSONException e) { + System.out.println("error but continue : " + e.getMessage()); + } + + return resultats; + } +} diff --git a/SillyJirafe.org/src/org/sillyjirafe/uoapi/binds/OpenVerseAudiosApi.java b/SillyJirafe.org/src/org/sillyjirafe/uoapi/binds/OpenVerseAudiosApi.java new file mode 100644 index 0000000..c6b8811 --- /dev/null +++ b/SillyJirafe.org/src/org/sillyjirafe/uoapi/binds/OpenVerseAudiosApi.java @@ -0,0 +1,44 @@ +package org.sillyjirafe.uoapi.binds; + +import java.util.ArrayList; +import java.util.List; + +import org.json.JSONArray; +import org.json.JSONObject; +import org.sillyjirafe.uoapi.Api; +import org.sillyjirafe.uoapi.element; + +public class OpenVerseAudiosApi implements Api +{ + public String getName() + { + return "OpenVerseAudiosApi"; + } + + public String getURL(int page) { + return "https://api.openverse.org/v1/audio/?format=json&page=" + page; + } + + public List Parse(String jsonRaw) { + List resultats = new ArrayList<>(); + + + try { + JSONObject json = new JSONObject(jsonRaw); + JSONArray items = json.getJSONArray("results"); + + for (int i = 0; i < items.length(); i++) { + JSONObject image = items.getJSONObject(i); + + String titre = image.getString("title"); + String url = image.getString("url"); + String licence = image.getString("license"); + + resultats.add(new element(titre, url, licence, "openverse", "audio")); + } + } catch (org.json.JSONException e) { + System.out.println("error but continue : " + e.getMessage()); + } + return resultats; + } +} diff --git a/SillyJirafe.org/src/org/sillyjirafe/uoapi/binds/OpenVerseImagesApi.java b/SillyJirafe.org/src/org/sillyjirafe/uoapi/binds/OpenVerseImagesApi.java new file mode 100644 index 0000000..3fa3fbb --- /dev/null +++ b/SillyJirafe.org/src/org/sillyjirafe/uoapi/binds/OpenVerseImagesApi.java @@ -0,0 +1,43 @@ +package org.sillyjirafe.uoapi.binds; + +import java.util.ArrayList; +import java.util.List; + +import org.json.JSONArray; +import org.json.JSONObject; +import org.sillyjirafe.uoapi.Api; +import org.sillyjirafe.uoapi.element; + +public class OpenVerseImagesApi implements Api +{ + public String getName() + { + return "OpenVerseImagesApi"; + } + + public String getURL(int page) { + return "https://api.openverse.org/v1/images/?format=json&page=" + page; + } + + public List Parse(String jsonRaw) { + List resultats = new ArrayList<>(); + + try { + JSONObject json = new JSONObject(jsonRaw); + JSONArray items = json.getJSONArray("results"); + + for (int i = 0; i < items.length(); i++) { + JSONObject image = items.getJSONObject(i); + + String titre = image.getString("title"); + String url = image.getString("url"); + String licence = image.getString("license"); + + resultats.add(new element(titre, url, licence, "openverse", "image")); + } + } catch (org.json.JSONException e) { + System.out.println("error but continue : " + e.getMessage()); + } + return resultats; + } +} diff --git a/SillyJirafe.org/src/org/sillyjirafe/uoapi/element.java b/SillyJirafe.org/src/org/sillyjirafe/uoapi/element.java new file mode 100644 index 0000000..e00b8cf --- /dev/null +++ b/SillyJirafe.org/src/org/sillyjirafe/uoapi/element.java @@ -0,0 +1,3 @@ +package org.sillyjirafe.uoapi; + +public record element(String title, String url, String licence, String source, String type) {} diff --git a/sillyjirafe.org.api/.classpath b/sillyjirafe.org.api/.classpath new file mode 100644 index 0000000..62ce2ad --- /dev/null +++ b/sillyjirafe.org.api/.classpath @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/sillyjirafe.org.api/.project b/sillyjirafe.org.api/.project new file mode 100644 index 0000000..6a187d0 --- /dev/null +++ b/sillyjirafe.org.api/.project @@ -0,0 +1,17 @@ + + + sillyblahaj.org.api + + + + + + org.eclipse.jdt.core.javabuilder + + + + + + org.eclipse.jdt.core.javanature + + diff --git a/sillyjirafe.org.api/.settings/org.eclipse.core.resources.prefs b/sillyjirafe.org.api/.settings/org.eclipse.core.resources.prefs new file mode 100644 index 0000000..99f26c0 --- /dev/null +++ b/sillyjirafe.org.api/.settings/org.eclipse.core.resources.prefs @@ -0,0 +1,2 @@ +eclipse.preferences.version=1 +encoding/=UTF-8 diff --git a/sillyjirafe.org.api/.settings/org.eclipse.jdt.core.prefs b/sillyjirafe.org.api/.settings/org.eclipse.jdt.core.prefs new file mode 100644 index 0000000..9a7984b --- /dev/null +++ b/sillyjirafe.org.api/.settings/org.eclipse.jdt.core.prefs @@ -0,0 +1,11 @@ +eclipse.preferences.version=1 +org.eclipse.jdt.core.compiler.codegen.targetPlatform=21 +org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve +org.eclipse.jdt.core.compiler.compliance=21 +org.eclipse.jdt.core.compiler.debug.lineNumber=generate +org.eclipse.jdt.core.compiler.debug.localVariable=generate +org.eclipse.jdt.core.compiler.debug.sourceFile=generate +org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures=disabled +org.eclipse.jdt.core.compiler.problem.reportPreviewFeatures=warning +org.eclipse.jdt.core.compiler.release=enabled +org.eclipse.jdt.core.compiler.source=21 diff --git a/sillyjirafe.org.api/bin/module-info.class b/sillyjirafe.org.api/bin/module-info.class new file mode 100644 index 0000000..e9844ae Binary files /dev/null and b/sillyjirafe.org.api/bin/module-info.class differ diff --git a/sillyjirafe.org.api/bin/org/sillyjirafe/api/Json.class b/sillyjirafe.org.api/bin/org/sillyjirafe/api/Json.class new file mode 100644 index 0000000..8e9ccee Binary files /dev/null and b/sillyjirafe.org.api/bin/org/sillyjirafe/api/Json.class differ diff --git a/sillyjirafe.org.api/bin/org/sillyjirafe/api/Main.class b/sillyjirafe.org.api/bin/org/sillyjirafe/api/Main.class new file mode 100644 index 0000000..cf156e2 Binary files /dev/null and b/sillyjirafe.org.api/bin/org/sillyjirafe/api/Main.class differ diff --git a/sillyjirafe.org.api/bin/org/sillyjirafe/api/Search.class b/sillyjirafe.org.api/bin/org/sillyjirafe/api/Search.class new file mode 100644 index 0000000..0c3275c Binary files /dev/null and b/sillyjirafe.org.api/bin/org/sillyjirafe/api/Search.class differ diff --git a/sillyjirafe.org.api/bin/org/sillyjirafe/api/Start.class b/sillyjirafe.org.api/bin/org/sillyjirafe/api/Start.class new file mode 100644 index 0000000..5612b20 Binary files /dev/null and b/sillyjirafe.org.api/bin/org/sillyjirafe/api/Start.class differ diff --git a/sillyjirafe.org.api/bin/org/sillyjirafe/uoapi/element.class b/sillyjirafe.org.api/bin/org/sillyjirafe/uoapi/element.class new file mode 100644 index 0000000..560bf65 Binary files /dev/null and b/sillyjirafe.org.api/bin/org/sillyjirafe/uoapi/element.class differ diff --git a/sillyjirafe.org.api/elements.db b/sillyjirafe.org.api/elements.db new file mode 100644 index 0000000..e69de29 diff --git a/sillyjirafe.org.api/src/module-info.java b/sillyjirafe.org.api/src/module-info.java new file mode 100644 index 0000000..8721103 --- /dev/null +++ b/sillyjirafe.org.api/src/module-info.java @@ -0,0 +1,12 @@ +/** + * + */ +/** + * + */ +module sillyblahaj.org.api { + requires java.sql; + requires java.net.http; + requires org.json; + requires jdk.httpserver; +} \ No newline at end of file diff --git a/sillyjirafe.org.api/src/org/sillyjirafe/api/Json.java b/sillyjirafe.org.api/src/org/sillyjirafe/api/Json.java new file mode 100644 index 0000000..a77f867 --- /dev/null +++ b/sillyjirafe.org.api/src/org/sillyjirafe/api/Json.java @@ -0,0 +1,25 @@ +package org.sillyjirafe.api; + +import java.util.List; + +import org.json.JSONArray; +import org.json.JSONObject; +import org.sillyjirafe.uoapi.element; + +public class Json { + public static String JSONConvert(List elements) { + JSONArray tableau = new JSONArray(); + + for (element e : elements) { + JSONObject obj = new JSONObject(); + obj.put("title", e.title()); + obj.put("url", e.url()); + obj.put("licence", e.licence()); + obj.put("source", e.source()); + obj.put("type", e.type()); + tableau.put(obj); + } + + return tableau.toString(); + } +} diff --git a/sillyjirafe.org.api/src/org/sillyjirafe/api/Main.java b/sillyjirafe.org.api/src/org/sillyjirafe/api/Main.java new file mode 100644 index 0000000..6e3e298 --- /dev/null +++ b/sillyjirafe.org.api/src/org/sillyjirafe/api/Main.java @@ -0,0 +1,11 @@ +package org.sillyjirafe.api; + +import java.sql.Connection; +import java.sql.DriverManager; + +public class Main { + public static void main(String[] args) throws Exception { + Connection conn = DriverManager.getConnection("jdbc:sqlite:elements.db"); + Start.API(conn); + } +} diff --git a/sillyjirafe.org.api/src/org/sillyjirafe/api/Search.java b/sillyjirafe.org.api/src/org/sillyjirafe/api/Search.java new file mode 100644 index 0000000..00e47f0 --- /dev/null +++ b/sillyjirafe.org.api/src/org/sillyjirafe/api/Search.java @@ -0,0 +1,44 @@ +package org.sillyjirafe.api; + +import java.sql.Connection; +import java.sql.PreparedStatement; +import java.sql.ResultSet; +import java.sql.SQLException; +import java.util.ArrayList; +import java.util.List; +import java.util.Map; + +import org.sillyjirafe.uoapi.element; + +public class Search { + public static List search(Connection conn, Map settings) throws SQLException { + List results = new ArrayList<>(); + String sql = """ + SELECT * FROM creations + WHERE (? = '' OR title LIKE ?) + AND (? = '' OR licence = ?) + AND (? = '' OR type = ?) + """; + + try (PreparedStatement ps = conn.prepareStatement(sql)) { + ps.setString(1, settings.getOrDefault("q", "")); + ps.setString(2, "%" + settings.getOrDefault("q", "") + "%"); + ps.setString(3, settings.getOrDefault("licence", "")); + ps.setString(4, settings.getOrDefault("licence", "")); + ps.setString(5, settings.getOrDefault("type", "")); + ps.setString(6, settings.getOrDefault("type", "")); + ResultSet rs = ps.executeQuery(); + + while (rs.next()) { + results.add(new element( + rs.getString("title"), + rs.getString("url"), + rs.getString("licence"), + rs.getString("source"), + rs.getString("type") + )); + } + } + return results; + } +} diff --git a/sillyjirafe.org.api/src/org/sillyjirafe/api/Start.java b/sillyjirafe.org.api/src/org/sillyjirafe/api/Start.java new file mode 100644 index 0000000..47eb388 --- /dev/null +++ b/sillyjirafe.org.api/src/org/sillyjirafe/api/Start.java @@ -0,0 +1,58 @@ +package org.sillyjirafe.api; + +import java.io.IOException; +import java.net.InetSocketAddress; +import java.sql.Connection; +import java.sql.SQLException; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +import org.sillyjirafe.uoapi.element; + +import com.sun.net.httpserver.HttpServer; + +public class Start { + public static void API(Connection conn) throws IOException { + HttpServer server = HttpServer.create(new InetSocketAddress(8081), 0); + + server.createContext("/search", exchange -> { + String query = exchange.getRequestURI().getQuery(); + Map settings = parseQuery(query); + + try { + List results = Search.search(conn, settings); + String json = Json.JSONConvert(results); + + exchange.getResponseHeaders().set("Content-Type", "application/json"); + exchange.sendResponseHeaders(200, json.getBytes().length); + exchange.getResponseBody().write(json.getBytes()); + exchange.getResponseBody().close(); + } catch (Exception e) { + e.printStackTrace(); + exchange.sendResponseHeaders(500, 0); + exchange.getResponseBody().close(); + } + }); + + server.start(); + System.out.println("Search API run on 8081 port"); + } + + public static Map parseQuery(String query) { + Map params = new HashMap<>(); + + if (query == null) return params; + + String[] paires = query.split("&"); + + for (String paire : paires) { + String[] cle_valeur = paire.split("=", 2); + if (cle_valeur.length == 2) { + params.put(cle_valeur[0], cle_valeur[1]); + } + } + + return params; + } +} diff --git a/sillyjirafe.org.api/src/org/sillyjirafe/uoapi/element.java b/sillyjirafe.org.api/src/org/sillyjirafe/uoapi/element.java new file mode 100644 index 0000000..e00b8cf --- /dev/null +++ b/sillyjirafe.org.api/src/org/sillyjirafe/uoapi/element.java @@ -0,0 +1,3 @@ +package org.sillyjirafe.uoapi; + +public record element(String title, String url, String licence, String source, String type) {}