From 5c1033bdb3650a0034abad971ebf121b54201142 Mon Sep 17 00:00:00 2001 From: Robert Vokac Date: Tue, 17 Dec 2024 16:19:45 +0100 Subject: [PATCH] Changes --- .../jdotnet/JDotNet/JDotNetException.java | 20 ++++++++++++++ .../jdotnet/System/EventHandler.java | 5 ++-- .../jdotnet/System/EventHandlerImpl.java | 13 ++++++--- ...hangedListener.java => EventListener.java} | 4 +-- .../jdotnet/System/Exception_.java | 3 ++- .../System/Globalization/CultureInfo.java | 8 ++++-- .../NewClass.java => IFormatProvider.java} | 4 +-- .../jdotnet/System/IO/FileMode.java | 26 ++++++++++++++++++ .../IsolatedStorageException.java | 15 +++++++++++ .../IsolatedStorage/IsolatedStorageFile.java | 27 +++++++++++++++++++ .../IsolatedStorageFileStream.java | 25 +++++++++++++++++ .../jdotnet/System/Text/Encoding.java | 25 +++++++++++++++++ .../openeggbert/jdotnet/System/TimeSpan.java | 14 ++++++++++ 13 files changed, 177 insertions(+), 12 deletions(-) create mode 100644 src/main/java/com/openeggbert/jdotnet/JDotNet/JDotNetException.java rename src/main/java/com/openeggbert/jdotnet/System/{ValueChangedListener.java => EventListener.java} (83%) rename src/main/java/com/openeggbert/jdotnet/System/{Text/NewClass.java => IFormatProvider.java} (76%) create mode 100644 src/main/java/com/openeggbert/jdotnet/System/IO/FileMode.java create mode 100644 src/main/java/com/openeggbert/jdotnet/System/IO/IsolatedStorage/IsolatedStorageException.java create mode 100644 src/main/java/com/openeggbert/jdotnet/System/IO/IsolatedStorage/IsolatedStorageFile.java create mode 100644 src/main/java/com/openeggbert/jdotnet/System/IO/IsolatedStorage/IsolatedStorageFileStream.java create mode 100644 src/main/java/com/openeggbert/jdotnet/System/Text/Encoding.java create mode 100644 src/main/java/com/openeggbert/jdotnet/System/TimeSpan.java diff --git a/src/main/java/com/openeggbert/jdotnet/JDotNet/JDotNetException.java b/src/main/java/com/openeggbert/jdotnet/JDotNet/JDotNetException.java new file mode 100644 index 0000000..9422bd8 --- /dev/null +++ b/src/main/java/com/openeggbert/jdotnet/JDotNet/JDotNetException.java @@ -0,0 +1,20 @@ +/* + * Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license + * Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template + */ +package com.openeggbert.jdotnet.JDotNet; + +import com.openeggbert.jdotnet.System.*; +import lombok.AllArgsConstructor; + +/** + * + * @author robertvokac + */ +@AllArgsConstructor +public class JDotNetException extends RuntimeException { + public JDotNetException(String msg) { + super(msg); + } + +} diff --git a/src/main/java/com/openeggbert/jdotnet/System/EventHandler.java b/src/main/java/com/openeggbert/jdotnet/System/EventHandler.java index bad5ad3..3c79629 100644 --- a/src/main/java/com/openeggbert/jdotnet/System/EventHandler.java +++ b/src/main/java/com/openeggbert/jdotnet/System/EventHandler.java @@ -10,8 +10,9 @@ package com.openeggbert.jdotnet.System; */ public interface EventHandler { - void addValueChangedListener(ValueChangedListener listener); - void removeValueChangedListener(ValueChangedListener listener); + void addEventListener(EventListener listener); + void removeEventListener(EventListener listener); + void invoke(T eventArgs); } diff --git a/src/main/java/com/openeggbert/jdotnet/System/EventHandlerImpl.java b/src/main/java/com/openeggbert/jdotnet/System/EventHandlerImpl.java index 8674db8..ab61c4c 100644 --- a/src/main/java/com/openeggbert/jdotnet/System/EventHandlerImpl.java +++ b/src/main/java/com/openeggbert/jdotnet/System/EventHandlerImpl.java @@ -15,16 +15,23 @@ import java.util.List; @AdditionalClassForDotNetSimulation public class EventHandlerImpl implements EventHandler { - private final List> list = new ArrayList<>(); + private final List> list = new ArrayList<>(); @Override - public void addValueChangedListener(ValueChangedListener listener) { + public void addEventListener(EventListener listener) { list.add(listener); } @Override - public void removeValueChangedListener(ValueChangedListener listener) { + public void removeEventListener(EventListener listener) { list.remove(listener); } + + @Override + public void invoke(T eventArgs) { + for(EventListener e : list) { + e.onEventHappened(eventArgs); + } + } } diff --git a/src/main/java/com/openeggbert/jdotnet/System/ValueChangedListener.java b/src/main/java/com/openeggbert/jdotnet/System/EventListener.java similarity index 83% rename from src/main/java/com/openeggbert/jdotnet/System/ValueChangedListener.java rename to src/main/java/com/openeggbert/jdotnet/System/EventListener.java index dda184e..35ff880 100644 --- a/src/main/java/com/openeggbert/jdotnet/System/ValueChangedListener.java +++ b/src/main/java/com/openeggbert/jdotnet/System/EventListener.java @@ -11,8 +11,8 @@ import com.openeggbert.jdotnet.JDotNet.AdditionalClassForDotNetSimulation; * @author robertvokac */ @AdditionalClassForDotNetSimulation -public interface ValueChangedListener{ +public interface EventListener{ - void onValueChanged(T eventArgs); + void onEventHappened(T eventArgs); } diff --git a/src/main/java/com/openeggbert/jdotnet/System/Exception_.java b/src/main/java/com/openeggbert/jdotnet/System/Exception_.java index 6ef4e83..6a339d2 100644 --- a/src/main/java/com/openeggbert/jdotnet/System/Exception_.java +++ b/src/main/java/com/openeggbert/jdotnet/System/Exception_.java @@ -4,6 +4,7 @@ */ package com.openeggbert.jdotnet.System; +import com.openeggbert.jdotnet.JDotNet.JDotNetException; import lombok.AllArgsConstructor; /** @@ -11,7 +12,7 @@ import lombok.AllArgsConstructor; * @author robertvokac */ @AllArgsConstructor -public class Exception_ extends RuntimeException { +public class Exception_ extends JDotNetException { public Exception_(String msg) { super(msg); } diff --git a/src/main/java/com/openeggbert/jdotnet/System/Globalization/CultureInfo.java b/src/main/java/com/openeggbert/jdotnet/System/Globalization/CultureInfo.java index e7a0ad4..34cc602 100644 --- a/src/main/java/com/openeggbert/jdotnet/System/Globalization/CultureInfo.java +++ b/src/main/java/com/openeggbert/jdotnet/System/Globalization/CultureInfo.java @@ -4,18 +4,22 @@ */ package com.openeggbert.jdotnet.System.Globalization; +import com.openeggbert.jdotnet.System.IFormatProvider; import lombok.Getter; /** * * @author robertvokac */ -public class CultureInfo { +public class CultureInfo implements IFormatProvider { public static CultureInfo getCurrentCulture() { //todo return null; } @Getter private String TwoLetterISOLanguageName; - + public static final CultureInfo InvariantCulture = new CultureInfo();//todo +// public String ToString(StringBuilder sb, int number) { +// +// } } diff --git a/src/main/java/com/openeggbert/jdotnet/System/Text/NewClass.java b/src/main/java/com/openeggbert/jdotnet/System/IFormatProvider.java similarity index 76% rename from src/main/java/com/openeggbert/jdotnet/System/Text/NewClass.java rename to src/main/java/com/openeggbert/jdotnet/System/IFormatProvider.java index 8bdb9b3..17e13f6 100644 --- a/src/main/java/com/openeggbert/jdotnet/System/Text/NewClass.java +++ b/src/main/java/com/openeggbert/jdotnet/System/IFormatProvider.java @@ -2,12 +2,12 @@ * Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license * Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template */ -package com.openeggbert.jdotnet.System.Text; +package com.openeggbert.jdotnet.System; /** * * @author robertvokac */ -public class NewClass { +public interface IFormatProvider { } diff --git a/src/main/java/com/openeggbert/jdotnet/System/IO/FileMode.java b/src/main/java/com/openeggbert/jdotnet/System/IO/FileMode.java new file mode 100644 index 0000000..de98357 --- /dev/null +++ b/src/main/java/com/openeggbert/jdotnet/System/IO/FileMode.java @@ -0,0 +1,26 @@ +/* + * Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license + * Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template + */ +package com.openeggbert.jdotnet.System.IO; + +import lombok.Getter; + +/** + * + * @author robertvokac + */ +public enum FileMode { + CreateNew(1), + Create(2), + Open(3), + OpenOrCreate(4), + Truncate(5), + Append(6); + + FileMode(int number) { + this.number = number; + } + @Getter + private final int number; +} diff --git a/src/main/java/com/openeggbert/jdotnet/System/IO/IsolatedStorage/IsolatedStorageException.java b/src/main/java/com/openeggbert/jdotnet/System/IO/IsolatedStorage/IsolatedStorageException.java new file mode 100644 index 0000000..351ac28 --- /dev/null +++ b/src/main/java/com/openeggbert/jdotnet/System/IO/IsolatedStorage/IsolatedStorageException.java @@ -0,0 +1,15 @@ +/* + * Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license + * Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template + */ +package com.openeggbert.jdotnet.System.IO.IsolatedStorage; + +import com.openeggbert.jdotnet.System.Exception_; + +/** + * + * @author robertvokac + */ +public class IsolatedStorageException extends Exception_ { + +} diff --git a/src/main/java/com/openeggbert/jdotnet/System/IO/IsolatedStorage/IsolatedStorageFile.java b/src/main/java/com/openeggbert/jdotnet/System/IO/IsolatedStorage/IsolatedStorageFile.java new file mode 100644 index 0000000..5fbeaad --- /dev/null +++ b/src/main/java/com/openeggbert/jdotnet/System/IO/IsolatedStorage/IsolatedStorageFile.java @@ -0,0 +1,27 @@ +/* + * Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license + * Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template + */ +package com.openeggbert.jdotnet.System.IO.IsolatedStorage; + +import com.openeggbert.jdotnet.System.IO.FileMode; + +/** + * + * @author robertvokac + */ +public class IsolatedStorageFile { + public static IsolatedStorageFile GetUserStoreForApplication() { + return null;//todo + } + public boolean FileExists(String path) { + return true;//todo + } + public IsolatedStorageFileStream OpenFile(String path, FileMode mode) { + return null;//todo + } + public void DeleteFile(String path) { + //todo + } + +} diff --git a/src/main/java/com/openeggbert/jdotnet/System/IO/IsolatedStorage/IsolatedStorageFileStream.java b/src/main/java/com/openeggbert/jdotnet/System/IO/IsolatedStorage/IsolatedStorageFileStream.java new file mode 100644 index 0000000..26ea948 --- /dev/null +++ b/src/main/java/com/openeggbert/jdotnet/System/IO/IsolatedStorage/IsolatedStorageFileStream.java @@ -0,0 +1,25 @@ +/* + * Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license + * Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template + */ +package com.openeggbert.jdotnet.System.IO.IsolatedStorage; + +/** + * + * @author robertvokac + */ +public class IsolatedStorageFileStream { + + public int Read(byte[] buffer, int offset, int count) + { + return 0;//todo + } + public void Write(byte[] buffer, int offset, int count) { + //todo + } + + public void Close() { + //todo + } + public int Length = 0; +} diff --git a/src/main/java/com/openeggbert/jdotnet/System/Text/Encoding.java b/src/main/java/com/openeggbert/jdotnet/System/Text/Encoding.java new file mode 100644 index 0000000..16c5553 --- /dev/null +++ b/src/main/java/com/openeggbert/jdotnet/System/Text/Encoding.java @@ -0,0 +1,25 @@ +/* + * Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license + * Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template + */ +package com.openeggbert.jdotnet.System.Text; + +/** + * + * @author robertvokac + */ +public class Encoding { + + public static final Encoding UTF8 = new Encoding();//todo + + public String GetString(byte[] bytes, int index, int count) { + return ""; + //todo + } + + public byte[] GetBytes(String s) { + return null; + //todo + } + +} diff --git a/src/main/java/com/openeggbert/jdotnet/System/TimeSpan.java b/src/main/java/com/openeggbert/jdotnet/System/TimeSpan.java new file mode 100644 index 0000000..2201c88 --- /dev/null +++ b/src/main/java/com/openeggbert/jdotnet/System/TimeSpan.java @@ -0,0 +1,14 @@ +/* + * Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license + * Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template + */ +package com.openeggbert.jdotnet.System; + +/** + * + * @author robertvokac + */ +public class TimeSpan { + public static TimeSpan FromTicks(long ticks) {return null;} + public static TimeSpan FromSeconds(double seconds) {return null;} +}