diff --git a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/BusProvider.java b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/BusProvider.java index 8cce3b1fd878e20b539b15d73b5abc8ab53ce7e4..a86b1024c83b0df469b5cba2c7c6c19642ed561c 100644 --- a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/BusProvider.java +++ b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/BusProvider.java @@ -7,11 +7,14 @@ import java.util.UUID; import de.greenrobot.event.EventBus; public class BusProvider { - @NonNull private final String id; - @NonNull public final EventBus handle; - @NonNull public final EventBus dispatch; + @NonNull + public final EventBus handle; + @NonNull + public final EventBus dispatch; @NonNull public final EventBus event; + @NonNull + private final String id; public BusProvider() { this.id = UUID.randomUUID().toString(); diff --git a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/Client.java b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/Client.java index 1d9bef4be3ba1039aec60b583d16325494135112..1024106b17a900809dfe2ab2ddd594fe7248fd13 100644 --- a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/Client.java +++ b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/Client.java @@ -17,10 +17,10 @@ import de.kuschku.libquassel.functions.types.InitRequestFunction; import de.kuschku.libquassel.functions.types.RpcCallFunction; import de.kuschku.libquassel.localtypes.Buffer; import de.kuschku.libquassel.localtypes.Buffers; +import de.kuschku.libquassel.message.Message; import de.kuschku.libquassel.objects.types.ClientInitAck; import de.kuschku.libquassel.objects.types.SessionState; import de.kuschku.libquassel.primitives.types.BufferInfo; -import de.kuschku.libquassel.message.Message; import de.kuschku.libquassel.primitives.types.QVariant; import de.kuschku.libquassel.syncables.types.BufferSyncer; import de.kuschku.libquassel.syncables.types.BufferViewManager; @@ -32,7 +32,7 @@ import de.kuschku.util.observables.callbacks.UICallback; import de.kuschku.util.observables.lists.IObservableList; import de.kuschku.util.observables.lists.ObservableComparableSortedList; -import static de.kuschku.util.AndroidAssert.*; +import static de.kuschku.util.AndroidAssert.assertNotNull; public class Client { @@ -129,7 +129,8 @@ public class Client { @NonNull private SyncableObject safeGetObjectByIdentifier(@NonNull String className, @NonNull String oldName) { SyncableObject val = getObjectByIdentifier(className, oldName); - if (val == null) throw new IllegalArgumentException(String.format("Object %s::%s does not exist", className, oldName)); + if (val == null) + throw new IllegalArgumentException(String.format("Object %s::%s does not exist", className, oldName)); else return val; } diff --git a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/CoreConnection.java b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/CoreConnection.java index 8cc38870e08d30963783016fc5fd4b31095adceb..003d968aae2a7d3a746dddb815edd979e7d741cb 100644 --- a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/CoreConnection.java +++ b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/CoreConnection.java @@ -31,7 +31,7 @@ import de.kuschku.util.ServerAddress; import de.kuschku.util.niohelpers.WrappedChannel; import static de.kuschku.libquassel.primitives.QMetaType.Type.UInt; -import static de.kuschku.util.AndroidAssert.*; +import static de.kuschku.util.AndroidAssert.assertNotNull; /** * Starts a connection to a core and handles the data in the backend. @@ -43,16 +43,16 @@ public class CoreConnection { @NonNull private final ServerAddress address; + @NonNull + private final ClientData clientData; + @NonNull + private final BusProvider busProvider; @Nullable private ExecutorService outputExecutor; @Nullable private ExecutorService inputExecutor; @Nullable private RemotePeer remotePeer; - @NonNull - private final ClientData clientData; - @NonNull - private final BusProvider busProvider; @Nullable private WrappedChannel channel; @Nullable @@ -76,8 +76,8 @@ public class CoreConnection { /** * This method opens a socket to the specified address and starts the connection process. * - * @throws IOException * @param supportsKeepAlive If the connection may use keepAlive + * @throws IOException */ public void open(boolean supportsKeepAlive) throws IOException { assertNotNull(client); diff --git a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/backlogmanagers/SimpleBacklogManager.java b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/backlogmanagers/SimpleBacklogManager.java index 0b79b5c8ae3adf91eb9f75d7c31a355ff43d73a4..118408905266934aa0524674717f6434ce746f50 100644 --- a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/backlogmanagers/SimpleBacklogManager.java +++ b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/backlogmanagers/SimpleBacklogManager.java @@ -44,21 +44,21 @@ public class SimpleBacklogManager extends BacklogManager { ))); } - public void receiveBacklog(@IntRange(from=0) int bufferId, int from, int to, int count, int extra, @NonNull List<Message> messages) { + public void receiveBacklog(@IntRange(from = 0) int bufferId, int from, int to, int count, int extra, @NonNull List<Message> messages) { get(bufferId).list.addAll(messages); busProvider.sendEvent(new BacklogReceivedEvent(bufferId)); } @Override - public void displayMessage(@IntRange(from=0) int bufferId, @NonNull Message message) { + public void displayMessage(@IntRange(from = 0) int bufferId, @NonNull Message message) { ObservableSortedList<Message> messages = get(bufferId); assertNotNull(messages); messages.list.add(message); } - public void bind(@IntRange(from=0) int bufferId, @NonNull RecyclerView.Adapter adapter, @Nullable AutoScroller scroller) { + public void bind(@IntRange(from = 0) int bufferId, @NonNull RecyclerView.Adapter adapter, @Nullable AutoScroller scroller) { ObservableSortedList<Message> messages = get(bufferId); assertNotNull(messages); @@ -66,17 +66,17 @@ public class SimpleBacklogManager extends BacklogManager { } @Override - public void requestMoreBacklog(@IntRange(from=0) int bufferId, int count) { + public void requestMoreBacklog(@IntRange(from = 0) int bufferId, int count) { ObservableSortedList<Message> backlog = backlogs.get(bufferId); int messageId = (backlog == null) ? -1 : - (backlog.last() == null) ? -1 : - backlog.last().messageId; + (backlog.last() == null) ? -1 : + backlog.last().messageId; requestBacklog(bufferId, -1, messageId, count, 0); } - public ObservableSortedList<Message> get(@IntRange(from=0) int bufferId) { + public ObservableSortedList<Message> get(@IntRange(from = 0) int bufferId) { if (backlogs.get(bufferId) == null) backlogs.put(bufferId, new ObservableComparableSortedList<>(Message.class, true)); diff --git a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/events/BacklogReceivedEvent.java b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/events/BacklogReceivedEvent.java index c4ab737762cbfa08b5d12e10c842ed12e7839010..1a9c1f93ac91dd7892a7e59808d4f9e3faf22292 100644 --- a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/events/BacklogReceivedEvent.java +++ b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/events/BacklogReceivedEvent.java @@ -4,7 +4,7 @@ import android.support.annotation.IntRange; @SuppressWarnings("WeakerAccess") public class BacklogReceivedEvent { - @IntRange(from=0) + @IntRange(from = 0) public final int bufferId; public BacklogReceivedEvent(int bufferId) { diff --git a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/functions/serializers/InitRequestFunctionSerializer.java b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/functions/serializers/InitRequestFunctionSerializer.java index 192a5298211bd9fa916e9c089f060769481a4200..4e0192611a7f2008eaf506a2ec9c41fc2c7f55f9 100644 --- a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/functions/serializers/InitRequestFunctionSerializer.java +++ b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/functions/serializers/InitRequestFunctionSerializer.java @@ -11,7 +11,8 @@ import de.kuschku.libquassel.functions.types.InitRequestFunction; import de.kuschku.libquassel.primitives.types.QVariant; import static de.kuschku.libquassel.primitives.QMetaType.Type.QByteArray; -import static de.kuschku.util.AndroidAssert.*; +import static de.kuschku.util.AndroidAssert.assertNotNull; +import static de.kuschku.util.AndroidAssert.assertTrue; @SuppressWarnings("unchecked") public class InitRequestFunctionSerializer implements FunctionSerializer<InitRequestFunction> { diff --git a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/functions/serializers/PackedInitDataFunctionSerializer.java b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/functions/serializers/PackedInitDataFunctionSerializer.java index eecd6f38800df336df86624f605d62cb92f73274..2d11a62791a49930ef61b316d0bb62132566cb36 100644 --- a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/functions/serializers/PackedInitDataFunctionSerializer.java +++ b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/functions/serializers/PackedInitDataFunctionSerializer.java @@ -10,7 +10,7 @@ import de.kuschku.libquassel.functions.types.UnpackedInitDataFunction; import de.kuschku.libquassel.primitives.types.QVariant; import de.kuschku.libquassel.protocols.DatastreamPeer; -import static de.kuschku.util.AndroidAssert.*; +import static de.kuschku.util.AndroidAssert.assertTrue; @SuppressWarnings({"unchecked", "ConstantConditions"}) public class PackedInitDataFunctionSerializer implements FunctionSerializer<UnpackedInitDataFunction> { diff --git a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/functions/serializers/PackedRpcCallFunctionSerializer.java b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/functions/serializers/PackedRpcCallFunctionSerializer.java index 4f08645aee4d68d18bffc06c013469d402c27b23..f58a62a0219e1a062017f9c3ab1fdb7dce5bca84 100644 --- a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/functions/serializers/PackedRpcCallFunctionSerializer.java +++ b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/functions/serializers/PackedRpcCallFunctionSerializer.java @@ -11,7 +11,7 @@ import de.kuschku.libquassel.primitives.QMetaType; import de.kuschku.libquassel.primitives.types.QVariant; import de.kuschku.libquassel.protocols.DatastreamPeer; -import static de.kuschku.util.AndroidAssert.*; +import static de.kuschku.util.AndroidAssert.assertTrue; @SuppressWarnings({"unchecked", "ConstantConditions"}) public class PackedRpcCallFunctionSerializer implements FunctionSerializer<RpcCallFunction> { diff --git a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/functions/serializers/PackedSyncFunctionSerializer.java b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/functions/serializers/PackedSyncFunctionSerializer.java index 005184b892a7461b02a8ed2d109fd4812289d09c..9967f694198e4e35fc6c67a43f6bc469e79a0687 100644 --- a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/functions/serializers/PackedSyncFunctionSerializer.java +++ b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/functions/serializers/PackedSyncFunctionSerializer.java @@ -11,7 +11,7 @@ import de.kuschku.libquassel.primitives.QMetaType; import de.kuschku.libquassel.primitives.types.QVariant; import de.kuschku.libquassel.protocols.DatastreamPeer; -import static de.kuschku.util.AndroidAssert.*; +import static de.kuschku.util.AndroidAssert.assertTrue; @SuppressWarnings({"unchecked", "ConstantConditions"}) public class PackedSyncFunctionSerializer<T> implements FunctionSerializer<SyncFunction<T>> { diff --git a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/functions/serializers/UnpackedInitDataFunctionSerializer.java b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/functions/serializers/UnpackedInitDataFunctionSerializer.java index 6ca0cac3b468cc06a54f5c40c30b250a651e26c7..4c5b4f88bfc136d0e290f25ca89f883498f9102e 100644 --- a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/functions/serializers/UnpackedInitDataFunctionSerializer.java +++ b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/functions/serializers/UnpackedInitDataFunctionSerializer.java @@ -10,7 +10,7 @@ import de.kuschku.libquassel.functions.FunctionType; import de.kuschku.libquassel.functions.types.PackedInitDataFunction; import de.kuschku.libquassel.primitives.types.QVariant; -import static de.kuschku.util.AndroidAssert.*; +import static de.kuschku.util.AndroidAssert.assertTrue; @SuppressWarnings({"unchecked", "ConstantConditions"}) public class UnpackedInitDataFunctionSerializer implements FunctionSerializer<PackedInitDataFunction> { diff --git a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/functions/serializers/UnpackedRpcCallFunctionSerializer.java b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/functions/serializers/UnpackedRpcCallFunctionSerializer.java index 192a3a86934de606aa167c070f2682a5ae3e5cc2..5349d7ba33875b45cf72b4893532d6962fda383f 100644 --- a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/functions/serializers/UnpackedRpcCallFunctionSerializer.java +++ b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/functions/serializers/UnpackedRpcCallFunctionSerializer.java @@ -10,7 +10,7 @@ import de.kuschku.libquassel.functions.types.RpcCallFunction; import de.kuschku.libquassel.primitives.QMetaType; import de.kuschku.libquassel.primitives.types.QVariant; -import static de.kuschku.util.AndroidAssert.*; +import static de.kuschku.util.AndroidAssert.assertTrue; @SuppressWarnings({"unchecked", "ConstantConditions"}) public class UnpackedRpcCallFunctionSerializer implements FunctionSerializer<RpcCallFunction> { diff --git a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/functions/serializers/UnpackedSyncFunctionSerializer.java b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/functions/serializers/UnpackedSyncFunctionSerializer.java index bc43e4a6e093e90aecb81ab08c1035d5e8a4b526..6d1bd916b19d74b5436b8ce796c64e91813c9a80 100644 --- a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/functions/serializers/UnpackedSyncFunctionSerializer.java +++ b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/functions/serializers/UnpackedSyncFunctionSerializer.java @@ -10,7 +10,7 @@ import de.kuschku.libquassel.functions.types.SyncFunction; import de.kuschku.libquassel.primitives.QMetaType; import de.kuschku.libquassel.primitives.types.QVariant; -import static de.kuschku.util.AndroidAssert.*; +import static de.kuschku.util.AndroidAssert.assertTrue; @SuppressWarnings({"unchecked", "ConstantConditions"}) public class UnpackedSyncFunctionSerializer<T> implements FunctionSerializer<SyncFunction<T>> { diff --git a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/localtypes/Buffers.java b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/localtypes/Buffers.java index 2c775120e4f0cbf274873e34f95dcc7662892097..fdf4c52aa530e2e0d9f9d5488d5e01858d9264d1 100644 --- a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/localtypes/Buffers.java +++ b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/localtypes/Buffers.java @@ -5,9 +5,8 @@ import android.support.annotation.Nullable; import de.kuschku.libquassel.primitives.types.BufferInfo; import de.kuschku.libquassel.syncables.types.Network; -import de.kuschku.util.AndroidAssert; -import static de.kuschku.util.AndroidAssert.*; +import static de.kuschku.util.AndroidAssert.assertNotNull; public class Buffers { private Buffers() { diff --git a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/objects/MessageTypeRegistry.java b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/objects/MessageTypeRegistry.java index 973b4ed3f5d6c549489bfbe3b294608c73eaf20a..e810d1536dac0c672f56be5cad63e1e0343b64de 100644 --- a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/objects/MessageTypeRegistry.java +++ b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/objects/MessageTypeRegistry.java @@ -18,7 +18,7 @@ import de.kuschku.libquassel.objects.serializers.ObjectSerializer; import de.kuschku.libquassel.objects.serializers.SessionInitSerializer; import de.kuschku.libquassel.primitives.types.QVariant; -import static de.kuschku.util.AndroidAssert.*; +import static de.kuschku.util.AndroidAssert.assertTrue; @SuppressWarnings({"unchecked", "ConstantConditions"}) public class MessageTypeRegistry { diff --git a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/objects/serializers/ClientInitAckSerializer.java b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/objects/serializers/ClientInitAckSerializer.java index 334d703e433c6577643e32314d8186a70c818524..2cda1fa083cf75501e9b74877f465915c04e3c39 100644 --- a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/objects/serializers/ClientInitAckSerializer.java +++ b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/objects/serializers/ClientInitAckSerializer.java @@ -34,9 +34,9 @@ public class ClientInitAckSerializer implements ObjectSerializer<ClientInitAck> final List<Map<String, QVariant>> storageBackends = new ArrayList<>(); final StorageBackendSerializer storageBackendSerializer = StorageBackendSerializer.get(); if (data.StorageBackends != null) - for (StorageBackend backend : data.StorageBackends) { - storageBackends.add((Map<String, QVariant>) storageBackendSerializer.toVariantMap(backend)); - } + for (StorageBackend backend : data.StorageBackends) { + storageBackends.add((Map<String, QVariant>) storageBackendSerializer.toVariantMap(backend)); + } final QVariant<Map<String, QVariant>> map = new QVariant<>(new HashMap<>()); map.data.put("Configured", new QVariant<>(data.Configured)); diff --git a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/objects/serializers/ClientLoginRejectSerializer.java b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/objects/serializers/ClientLoginRejectSerializer.java index b0c87520c61cddbb4990055a3aae35e997186b10..b1bd62d39b71378e3f014bb7674dc6d34f2f8b5d 100644 --- a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/objects/serializers/ClientLoginRejectSerializer.java +++ b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/objects/serializers/ClientLoginRejectSerializer.java @@ -11,7 +11,7 @@ import de.kuschku.libquassel.functions.types.UnpackedFunction; import de.kuschku.libquassel.objects.types.ClientLoginReject; import de.kuschku.libquassel.primitives.types.QVariant; -import static de.kuschku.util.AndroidAssert.*; +import static de.kuschku.util.AndroidAssert.assertNotNull; @SuppressWarnings({"unchecked", "ConstantConditions"}) public class ClientLoginRejectSerializer implements ObjectSerializer<ClientLoginReject> { diff --git a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/objects/serializers/ClientLoginSerializer.java b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/objects/serializers/ClientLoginSerializer.java index 56a1c56d63f25b1a617069cde1b11b079cc5b02a..b8ec5fb58e94c7df1f117e325b639a93bcbf2c14 100644 --- a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/objects/serializers/ClientLoginSerializer.java +++ b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/objects/serializers/ClientLoginSerializer.java @@ -11,7 +11,7 @@ import de.kuschku.libquassel.functions.types.UnpackedFunction; import de.kuschku.libquassel.objects.types.ClientLogin; import de.kuschku.libquassel.primitives.types.QVariant; -import static de.kuschku.util.AndroidAssert.*; +import static de.kuschku.util.AndroidAssert.assertNotNull; @SuppressWarnings({"unchecked", "ConstantConditions"}) public class ClientLoginSerializer implements ObjectSerializer<ClientLogin> { diff --git a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/objects/serializers/CoreSetupDataSerializer.java b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/objects/serializers/CoreSetupDataSerializer.java index edbcff4f58575e1dbfda0894b8c0567b1dd66568..54b044bcdddaec728f6a9d64baf3ff8caf932e81 100644 --- a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/objects/serializers/CoreSetupDataSerializer.java +++ b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/objects/serializers/CoreSetupDataSerializer.java @@ -11,7 +11,7 @@ import de.kuschku.libquassel.functions.types.UnpackedFunction; import de.kuschku.libquassel.objects.types.CoreSetupData; import de.kuschku.libquassel.primitives.types.QVariant; -import static de.kuschku.util.AndroidAssert.*; +import static de.kuschku.util.AndroidAssert.assertNotNull; @SuppressWarnings({"unchecked", "ConstantConditions"}) public class CoreSetupDataSerializer implements ObjectSerializer<CoreSetupData> { diff --git a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/objects/serializers/CoreSetupRejectSerializer.java b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/objects/serializers/CoreSetupRejectSerializer.java index 1531e0592d71a5362cdc4e02f4b63e859f3716f5..be06c19d0ddfe234dc027cc3f7bd8c1cd1b2c805 100644 --- a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/objects/serializers/CoreSetupRejectSerializer.java +++ b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/objects/serializers/CoreSetupRejectSerializer.java @@ -11,7 +11,7 @@ import de.kuschku.libquassel.functions.types.UnpackedFunction; import de.kuschku.libquassel.objects.types.CoreSetupReject; import de.kuschku.libquassel.primitives.types.QVariant; -import static de.kuschku.util.AndroidAssert.*; +import static de.kuschku.util.AndroidAssert.assertNotNull; @SuppressWarnings({"unchecked", "ConstantConditions"}) public class CoreSetupRejectSerializer implements ObjectSerializer<CoreSetupReject> { diff --git a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/objects/serializers/NetworkServerSerializer.java b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/objects/serializers/NetworkServerSerializer.java index a5841418217e9267e7174d75d97151e27bb7f6b2..782a2182d740d22a435268bd0cc91e1307c49fb9 100644 --- a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/objects/serializers/NetworkServerSerializer.java +++ b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/objects/serializers/NetworkServerSerializer.java @@ -11,7 +11,7 @@ import de.kuschku.libquassel.functions.types.UnpackedFunction; import de.kuschku.libquassel.objects.types.NetworkServer; import de.kuschku.libquassel.primitives.types.QVariant; -import static de.kuschku.util.AndroidAssert.*; +import static de.kuschku.util.AndroidAssert.assertNotNull; @SuppressWarnings({"unchecked", "ConstantConditions"}) public class NetworkServerSerializer implements ObjectSerializer<NetworkServer> { diff --git a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/objects/serializers/SetupDataInitializer.java b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/objects/serializers/SetupDataInitializer.java index 5cf5c1bcfe262c1c93710934b532a099df956475..4bf5db6bed7bda57a058d1e3367f80152aac17ad 100644 --- a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/objects/serializers/SetupDataInitializer.java +++ b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/objects/serializers/SetupDataInitializer.java @@ -11,7 +11,7 @@ import de.kuschku.libquassel.functions.types.UnpackedFunction; import de.kuschku.libquassel.objects.types.SetupData; import de.kuschku.libquassel.primitives.types.QVariant; -import static de.kuschku.util.AndroidAssert.*; +import static de.kuschku.util.AndroidAssert.assertNotNull; @SuppressWarnings({"unchecked", "ConstantConditions"}) public class SetupDataInitializer implements ObjectSerializer<SetupData> { diff --git a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/objects/serializers/StorageBackendSerializer.java b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/objects/serializers/StorageBackendSerializer.java index 217db453efdf98441a89f21cd22cd4342f2931f8..2fec529f7a4c94497638d6fa8d9b02c69bfb45a3 100644 --- a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/objects/serializers/StorageBackendSerializer.java +++ b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/objects/serializers/StorageBackendSerializer.java @@ -12,7 +12,7 @@ import de.kuschku.libquassel.functions.types.UnpackedFunction; import de.kuschku.libquassel.objects.types.StorageBackend; import de.kuschku.libquassel.primitives.types.QVariant; -import static de.kuschku.util.AndroidAssert.*; +import static de.kuschku.util.AndroidAssert.assertNotNull; @SuppressWarnings({"unchecked", "ConstantConditions"}) public class StorageBackendSerializer implements ObjectSerializer<StorageBackend> { diff --git a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/objects/serializers/StringObjectMapSerializer.java b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/objects/serializers/StringObjectMapSerializer.java index 56f19d8de26198088f12723b8738457ac73a9ab5..2daf1cb2cc2f4a1002a83c3dc7ff746c73d24a54 100644 --- a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/objects/serializers/StringObjectMapSerializer.java +++ b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/objects/serializers/StringObjectMapSerializer.java @@ -10,7 +10,7 @@ import de.kuschku.libquassel.functions.types.SerializedFunction; import de.kuschku.libquassel.functions.types.UnpackedFunction; import de.kuschku.libquassel.primitives.types.QVariant; -import static de.kuschku.util.AndroidAssert.*; +import static de.kuschku.util.AndroidAssert.assertNotNull; @SuppressWarnings({"unchecked", "ConstantConditions"}) public class StringObjectMapSerializer<T> implements ObjectSerializer<Map<String, T>> { diff --git a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/primitives/QMetaTypeRegistry.java b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/primitives/QMetaTypeRegistry.java index 8d2c377969638a89ffad460bf9e5cdfe0c2c507c..ed03782e54918ba2dfcae03c030eee6c541de2bc 100644 --- a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/primitives/QMetaTypeRegistry.java +++ b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/primitives/QMetaTypeRegistry.java @@ -13,6 +13,7 @@ import java.util.HashMap; import java.util.List; import java.util.Map; +import de.kuschku.libquassel.message.Message; import de.kuschku.libquassel.objects.serializers.NetworkServerSerializer; import de.kuschku.libquassel.objects.types.NetworkServer; import de.kuschku.libquassel.primitives.serializers.BoolSerializer; @@ -36,12 +37,11 @@ import de.kuschku.libquassel.primitives.serializers.VariantSerializer; import de.kuschku.libquassel.primitives.serializers.VariantVariantListSerializer; import de.kuschku.libquassel.primitives.serializers.VoidSerializer; import de.kuschku.libquassel.primitives.types.BufferInfo; -import de.kuschku.libquassel.message.Message; import de.kuschku.libquassel.primitives.types.QVariant; import de.kuschku.libquassel.syncables.serializers.IdentitySerializer; import de.kuschku.libquassel.syncables.types.Identity; -import static de.kuschku.util.AndroidAssert.*; +import static de.kuschku.util.AndroidAssert.assertNotNull; @SuppressWarnings({"unchecked", "ConstantConditions"}) public class QMetaTypeRegistry { diff --git a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/primitives/serializers/BoolSerializer.java b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/primitives/serializers/BoolSerializer.java index aa1e72d6294e71eca7d233026881ac2565dc7d87..bb6d70802d668ca280f45016795cf96416b066f9 100644 --- a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/primitives/serializers/BoolSerializer.java +++ b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/primitives/serializers/BoolSerializer.java @@ -9,9 +9,12 @@ import java.nio.channels.ByteChannel; public class BoolSerializer implements PrimitiveSerializer<Boolean> { @NonNull private static final BoolSerializer serializer = new BoolSerializer(); - private BoolSerializer() {} + + private BoolSerializer() { + } + @NonNull - public static BoolSerializer get(){ + public static BoolSerializer get() { return serializer; } diff --git a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/primitives/serializers/BufferInfoSerializer.java b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/primitives/serializers/BufferInfoSerializer.java index 385032b2ff9278e15609ad83aa5de69fe10fe033..7a87f0dffc8105f3856f3a4e8173b3c18e79b347 100644 --- a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/primitives/serializers/BufferInfoSerializer.java +++ b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/primitives/serializers/BufferInfoSerializer.java @@ -11,9 +11,12 @@ import de.kuschku.libquassel.primitives.types.BufferInfo; public class BufferInfoSerializer implements PrimitiveSerializer<BufferInfo> { @NonNull private static final BufferInfoSerializer serializer = new BufferInfoSerializer(); - private BufferInfoSerializer() {} + + private BufferInfoSerializer() { + } + @NonNull - public static BufferInfoSerializer get(){ + public static BufferInfoSerializer get() { return serializer; } diff --git a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/primitives/serializers/ByteArraySerializer.java b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/primitives/serializers/ByteArraySerializer.java index a85799c500c106c2bb8743c64c40b5ca8f5ec620..066dced2d6f4229e7e2db331fdfb075a4e4be950 100644 --- a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/primitives/serializers/ByteArraySerializer.java +++ b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/primitives/serializers/ByteArraySerializer.java @@ -14,23 +14,23 @@ public class ByteArraySerializer implements PrimitiveSerializer<String> { private static final ByteArraySerializer serializerFalse = new ByteArraySerializer(false); @NonNull private static final ByteArraySerializer serializerTrue = new ByteArraySerializer(true); + private final boolean trimLastByte; + + private ByteArraySerializer(boolean trimLastByte) { + this.trimLastByte = trimLastByte; + } @NonNull public static ByteArraySerializer get() { return get(false); } + @NonNull public static ByteArraySerializer get(boolean trimLastByte) { if (trimLastByte) return serializerTrue; else return serializerFalse; } - private final boolean trimLastByte; - - private ByteArraySerializer(boolean trimLastByte) { - this.trimLastByte = trimLastByte; - } - @Override public void serialize(@NonNull final ByteChannel channel, @Nullable final String data) throws IOException { if (data == null) { diff --git a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/primitives/serializers/MessageSerializer.java b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/primitives/serializers/MessageSerializer.java index 157f271496d8b5a42ffabbf0f5f08aa7e184c6fe..2b7690fdc6eae7549b94f2d10211369b129e7c9d 100644 --- a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/primitives/serializers/MessageSerializer.java +++ b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/primitives/serializers/MessageSerializer.java @@ -11,7 +11,7 @@ import java.nio.channels.ByteChannel; import de.kuschku.libquassel.message.Message; -import static de.kuschku.util.AndroidAssert.*; +import static de.kuschku.util.AndroidAssert.assertNotNull; public class MessageSerializer implements PrimitiveSerializer<Message> { @NonNull diff --git a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/primitives/serializers/UserTypeSerializer.java b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/primitives/serializers/UserTypeSerializer.java index 5f15fdfd522c817d3a3899f1e1842f83d0599017..2dd083691163f4aa6db472f11276716c9b19829e 100644 --- a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/primitives/serializers/UserTypeSerializer.java +++ b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/primitives/serializers/UserTypeSerializer.java @@ -10,7 +10,7 @@ import java.util.Map; import de.kuschku.libquassel.objects.serializers.ObjectSerializer; import de.kuschku.libquassel.primitives.types.QVariant; -import static de.kuschku.util.AndroidAssert.*; +import static de.kuschku.util.AndroidAssert.assertNotNull; @SuppressWarnings({"unchecked", "ConstantConditions"}) public class UserTypeSerializer<T> implements PrimitiveSerializer<T> { @@ -33,6 +33,6 @@ public class UserTypeSerializer<T> implements PrimitiveSerializer<T> { @NonNull @Override public T deserialize(@NonNull ByteBuffer buffer) throws IOException { - return (T)(Object) objectSerializer.fromLegacy(((VariantMapSerializer) VariantMapSerializer.get()).deserialize(buffer)); + return (T) (Object) objectSerializer.fromLegacy(((VariantMapSerializer) VariantMapSerializer.get()).deserialize(buffer)); } } diff --git a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/primitives/serializers/VariantMapSerializer.java b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/primitives/serializers/VariantMapSerializer.java index 4bdefb89b7de0a3f8c4ffc7d09e154d261cbd38a..23ce24dd4e9865dfca7c1972ddc73d39429ef829 100644 --- a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/primitives/serializers/VariantMapSerializer.java +++ b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/primitives/serializers/VariantMapSerializer.java @@ -14,6 +14,10 @@ import de.kuschku.libquassel.primitives.types.QVariant; public class VariantMapSerializer<T> implements PrimitiveSerializer<Map<String, QVariant<T>>> { @NonNull private static final VariantMapSerializer serializer = new VariantMapSerializer(); + @NonNull + private final PrimitiveSerializer<String> stringSerializer = StringSerializer.get(); + @NonNull + private final VariantSerializer<T> variantSerializer = VariantSerializer.get(); private VariantMapSerializer() { } @@ -23,11 +27,6 @@ public class VariantMapSerializer<T> implements PrimitiveSerializer<Map<String, return serializer; } - @NonNull - private final PrimitiveSerializer<String> stringSerializer = StringSerializer.get(); - @NonNull - private final VariantSerializer<T> variantSerializer = VariantSerializer.get(); - @Override public void serialize(@NonNull final ByteChannel channel, @NonNull final Map<String, QVariant<T>> data) throws IOException { IntSerializer.get().serialize(channel, data.size()); diff --git a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/primitives/types/QVariant.java b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/primitives/types/QVariant.java index efc55df6925f7cd30539622e7340e20798c5b315..a1f526fcfff789586b87a0edeb7896afb44bbf33 100644 --- a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/primitives/types/QVariant.java +++ b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/primitives/types/QVariant.java @@ -12,7 +12,7 @@ public class QVariant<T> { @NonNull public final QMetaType<T> type; - public QVariant(@NonNull T data) { + public QVariant(@NonNull T data) { this.type = QMetaTypeRegistry.getTypeByObject(data); this.data = data; } diff --git a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/protocols/DatastreamPeer.java b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/protocols/DatastreamPeer.java index 025e95710bdbb38d758bbf3b3c6bafb9b62e4513..4938a269375402ce7b0352ef943b3161c962592e 100644 --- a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/protocols/DatastreamPeer.java +++ b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/protocols/DatastreamPeer.java @@ -40,7 +40,7 @@ import de.kuschku.libquassel.primitives.serializers.VariantVariantListSerializer import de.kuschku.libquassel.primitives.types.QVariant; import de.kuschku.util.niohelpers.WrappedChannel; -import static de.kuschku.util.AndroidAssert.*; +import static de.kuschku.util.AndroidAssert.assertNotNull; /** * A helper class processing incoming and outgoing messages. @@ -50,12 +50,12 @@ import static de.kuschku.util.AndroidAssert.*; */ @SuppressWarnings({"unchecked"}) public class DatastreamPeer implements RemotePeer { - @NonNull - private ByteBuffer buffer = ByteBuffer.allocate(0); @NonNull private final CoreConnection connection; @NonNull private final BusProvider busProvider; + @NonNull + private ByteBuffer buffer = ByteBuffer.allocate(0); public DatastreamPeer(@NonNull CoreConnection connection, @NonNull BusProvider busProvider) { this.connection = connection; @@ -155,7 +155,7 @@ public class DatastreamPeer implements RemotePeer { busProvider.handle(InitRequestFunctionSerializer.get().deserialize(data)); break; case INITDATA: - busProvider.handle( PackedInitDataFunctionSerializer.get().deserialize(data)); + busProvider.handle(PackedInitDataFunctionSerializer.get().deserialize(data)); break; case HEARTBEAT: case HEARTBEATREPLY: diff --git a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/protocols/LegacyPeer.java b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/protocols/LegacyPeer.java index 5fae00418e2aa30def17ce891c25cd6cc31abc90..53582f5adbaf21865e7efc89150dff32ff18d5d6 100644 --- a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/protocols/LegacyPeer.java +++ b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/protocols/LegacyPeer.java @@ -43,12 +43,12 @@ import static de.kuschku.libquassel.primitives.QMetaType.Type.QVariantMap; */ @SuppressWarnings({"unchecked"}) public class LegacyPeer implements RemotePeer { - @NonNull - private ByteBuffer buffer = ByteBuffer.allocate(0); @NonNull private final CoreConnection connection; @NonNull private final BusProvider busProvider; + @NonNull + private ByteBuffer buffer = ByteBuffer.allocate(0); public LegacyPeer(@NonNull CoreConnection connection, @NonNull BusProvider busProvider) { this.connection = connection; diff --git a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/syncables/serializers/BufferSyncerSerializer.java b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/syncables/serializers/BufferSyncerSerializer.java index d71d96998c5e8d47b415cf30de133708c4751bf1..76866b8983e678de17bfc063f566b56942e916ce 100644 --- a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/syncables/serializers/BufferSyncerSerializer.java +++ b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/syncables/serializers/BufferSyncerSerializer.java @@ -18,9 +18,12 @@ import de.kuschku.libquassel.syncables.types.BufferSyncer; public class BufferSyncerSerializer implements ObjectSerializer<BufferSyncer> { @NonNull private static final BufferSyncerSerializer serializer = new BufferSyncerSerializer(); - private BufferSyncerSerializer() {} + + private BufferSyncerSerializer() { + } + @NonNull - public static BufferSyncerSerializer get(){ + public static BufferSyncerSerializer get() { return serializer; } diff --git a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/syncables/serializers/BufferViewConfigSerializer.java b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/syncables/serializers/BufferViewConfigSerializer.java index dbaf2eacba0ba0593fdf308bc19f990e42559b0d..03c997d10608ab72e14f5b6b13f0837e7727cc56 100644 --- a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/syncables/serializers/BufferViewConfigSerializer.java +++ b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/syncables/serializers/BufferViewConfigSerializer.java @@ -17,9 +17,12 @@ import de.kuschku.libquassel.syncables.types.BufferViewConfig; public class BufferViewConfigSerializer implements ObjectSerializer<BufferViewConfig> { @NonNull private static final BufferViewConfigSerializer serializer = new BufferViewConfigSerializer(); - private BufferViewConfigSerializer() {} + + private BufferViewConfigSerializer() { + } + @NonNull - public static BufferViewConfigSerializer get(){ + public static BufferViewConfigSerializer get() { return serializer; } diff --git a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/syncables/serializers/BufferViewManagerSerializer.java b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/syncables/serializers/BufferViewManagerSerializer.java index cdd8f87ffc84730eb1cd7e30de7bdbbeaae40749..c73a286b0e5e9014b1e3a8478fcf2d49080d4120 100644 --- a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/syncables/serializers/BufferViewManagerSerializer.java +++ b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/syncables/serializers/BufferViewManagerSerializer.java @@ -17,9 +17,12 @@ import de.kuschku.libquassel.syncables.types.BufferViewManager; public class BufferViewManagerSerializer implements ObjectSerializer<BufferViewManager> { @NonNull private static final BufferViewManagerSerializer serializer = new BufferViewManagerSerializer(); - private BufferViewManagerSerializer() {} + + private BufferViewManagerSerializer() { + } + @NonNull - public static BufferViewManagerSerializer get(){ + public static BufferViewManagerSerializer get() { return serializer; } diff --git a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/syncables/serializers/IdentitySerializer.java b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/syncables/serializers/IdentitySerializer.java index 0c84ae469de0cbd6aefcf199364c4e3109ec8845..082a799d3d9e7c3ddc62de2409812d98eed099d0 100644 --- a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/syncables/serializers/IdentitySerializer.java +++ b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/syncables/serializers/IdentitySerializer.java @@ -17,9 +17,12 @@ import de.kuschku.libquassel.syncables.types.Identity; public class IdentitySerializer implements ObjectSerializer<Identity> { @NonNull private static final IdentitySerializer serializer = new IdentitySerializer(); - private IdentitySerializer() {} + + private IdentitySerializer() { + } + @NonNull - public static IdentitySerializer get(){ + public static IdentitySerializer get() { return serializer; } diff --git a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/syncables/serializers/IrcChannelSerializer.java b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/syncables/serializers/IrcChannelSerializer.java index f69aa78997e0f836529de22f5646d5a045ab6f83..7bfcb5527cfc6a4ce1fa2e075a7ef64f38d9524e 100644 --- a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/syncables/serializers/IrcChannelSerializer.java +++ b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/syncables/serializers/IrcChannelSerializer.java @@ -17,9 +17,12 @@ import de.kuschku.libquassel.syncables.types.IrcChannel; public class IrcChannelSerializer implements ObjectSerializer<IrcChannel> { @NonNull private static final IrcChannelSerializer serializer = new IrcChannelSerializer(); - private IrcChannelSerializer() {} + + private IrcChannelSerializer() { + } + @NonNull - public static IrcChannelSerializer get(){ + public static IrcChannelSerializer get() { return serializer; } diff --git a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/syncables/serializers/IrcUserSerializer.java b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/syncables/serializers/IrcUserSerializer.java index 4f43b8c4df89b0d59505e7ee8891543073169599..5004534e1dc05b9275b5f1910fe3ffe7e836047c 100644 --- a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/syncables/serializers/IrcUserSerializer.java +++ b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/syncables/serializers/IrcUserSerializer.java @@ -15,15 +15,18 @@ import de.kuschku.libquassel.objects.serializers.ObjectSerializer; import de.kuschku.libquassel.primitives.types.QVariant; import de.kuschku.libquassel.syncables.types.IrcUser; -import static de.kuschku.util.AndroidAssert.*; +import static de.kuschku.util.AndroidAssert.assertNotNull; @SuppressWarnings({"unchecked", "ConstantConditions"}) public class IrcUserSerializer implements ObjectSerializer<IrcUser> { @NonNull private static final IrcUserSerializer serializer = new IrcUserSerializer(); - private IrcUserSerializer() {} + + private IrcUserSerializer() { + } + @NonNull - public static IrcUserSerializer get(){ + public static IrcUserSerializer get() { return serializer; } diff --git a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/syncables/serializers/NetworkSerializer.java b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/syncables/serializers/NetworkSerializer.java index 9cc1a67e6d081e9b95a21e61fc453c2dfa28838a..2c395dc2660f15678587c5d68958e75e634e72ed 100644 --- a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/syncables/serializers/NetworkSerializer.java +++ b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/syncables/serializers/NetworkSerializer.java @@ -25,9 +25,12 @@ import de.kuschku.libquassel.syncables.types.Network; public class NetworkSerializer implements ObjectSerializer<Network> { @NonNull private static final NetworkSerializer serializer = new NetworkSerializer(); - private NetworkSerializer() {} + + private NetworkSerializer() { + } + @NonNull - public static NetworkSerializer get(){ + public static NetworkSerializer get() { return serializer; } diff --git a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/syncables/types/BufferSyncer.java b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/syncables/types/BufferSyncer.java index 52772b7741f0fbc6f0cf5ab400841ef3cde0c925..20d24a33f5b5a8769cd2e11d688009e2dd5ae204 100644 --- a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/syncables/types/BufferSyncer.java +++ b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/syncables/types/BufferSyncer.java @@ -10,10 +10,9 @@ import de.kuschku.libquassel.BusProvider; import de.kuschku.libquassel.Client; import de.kuschku.libquassel.functions.types.InitDataFunction; import de.kuschku.libquassel.message.Message; -import de.kuschku.util.AndroidAssert; import de.kuschku.util.observables.lists.ObservableSortedList; -import static de.kuschku.util.AndroidAssert.*; +import static de.kuschku.util.AndroidAssert.assertNotNull; public class BufferSyncer extends SyncableObject { @NonNull @@ -42,7 +41,7 @@ public class BufferSyncer extends SyncableObject { setClient(client); } - public void markBufferAsRead(@IntRange(from=0) int bufferId) { + public void markBufferAsRead(@IntRange(from = 0) int bufferId) { ObservableSortedList<Message> buffer = client.getBacklogManager().get(bufferId); assertNotNull(buffer); diff --git a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/syncables/types/BufferViewConfig.java b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/syncables/types/BufferViewConfig.java index 58d4b424dafe8db0e9297cc9278d84db12434475..90844af33aca5acdb1effe485693defd5626aa08 100644 --- a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/syncables/types/BufferViewConfig.java +++ b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/syncables/types/BufferViewConfig.java @@ -171,7 +171,7 @@ public class BufferViewConfig extends SyncableObject { public void SYNC_addBuffer(int bufferId, int position) { addBuffer(bufferId, position); - sync("addBuffer", new Object[] {bufferId, position}); + sync("addBuffer", new Object[]{bufferId, position}); } public void removeBuffer(int bufferId) { @@ -180,6 +180,6 @@ public class BufferViewConfig extends SyncableObject { public void SYNC_removeBuffer(int bufferId) { removeBuffer(bufferId); - sync("removeBuffer", new Object[] {bufferId}); + sync("removeBuffer", new Object[]{bufferId}); } } diff --git a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/syncables/types/IrcUser.java b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/syncables/types/IrcUser.java index c6b8c55d9388b471d0794dbf123df60f37204b59..b13a94d86d8f4ac9ad52241d42f96f47d3211631 100644 --- a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/syncables/types/IrcUser.java +++ b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/syncables/types/IrcUser.java @@ -11,7 +11,7 @@ import de.kuschku.libquassel.BusProvider; import de.kuschku.libquassel.Client; import de.kuschku.libquassel.functions.types.InitDataFunction; -import static de.kuschku.util.AndroidAssert.*; +import static de.kuschku.util.AndroidAssert.assertNotNull; public class IrcUser extends SyncableObject { public String server; diff --git a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/syncables/types/Network.java b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/syncables/types/Network.java index 2d4e600631086d03926ff7a3bf86312d5bc3f6d1..375b6b93cc0c909556777bc27068f2a6eed6e4e3 100644 --- a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/syncables/types/Network.java +++ b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/syncables/types/Network.java @@ -19,17 +19,15 @@ import de.kuschku.libquassel.localtypes.Buffer; import de.kuschku.libquassel.objects.types.NetworkServer; import de.kuschku.util.observables.ContentComparable; -import static de.kuschku.util.AndroidAssert.*; +import static de.kuschku.util.AndroidAssert.assertNotNull; public class Network extends SyncableObject implements ContentComparable<Network> { + @NonNull + private final Set<Buffer> buffers = new HashSet<>(); @NonNull private Map<String, IrcUser> users; @NonNull private Map<String, IrcChannel> channels; - - @NonNull - private final Set<Buffer> buffers = new HashSet<>(); - @NonNull private List<NetworkServer> ServerList; @NonNull @@ -81,7 +79,7 @@ public class Network extends SyncableObject implements ContentComparable<Network public Network(@NonNull Map<String, IrcChannel> channels, @NonNull Map<String, IrcUser> users, @NonNull List<NetworkServer> serverList, @NonNull Map<String, String> supports, - @NonNull String autoIdentifyPassword, @NonNull String autoIdentifyService, + @NonNull String autoIdentifyPassword, @NonNull String autoIdentifyService, int autoReconnectInterval, short autoReconnectRetries, @NonNull String codecForDecoding, @NonNull String codecForEncoding, @NonNull String codecForServer, int connectionState, diff --git a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/syncables/types/SyncableObject.java b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/syncables/types/SyncableObject.java index 293bb33d0d1966c3afd779131daf73c25de7a68f..299480bc16c5647f9dce228991f45ac402e539a3 100644 --- a/QuasselDroidNG/src/main/java/de/kuschku/libquassel/syncables/types/SyncableObject.java +++ b/QuasselDroidNG/src/main/java/de/kuschku/libquassel/syncables/types/SyncableObject.java @@ -10,7 +10,7 @@ import de.kuschku.libquassel.Client; import de.kuschku.libquassel.functions.types.InitDataFunction; import de.kuschku.libquassel.functions.types.SyncFunction; -import static de.kuschku.util.AndroidAssert.*; +import static de.kuschku.util.AndroidAssert.assertNotNull; public abstract class SyncableObject { @Nullable diff --git a/QuasselDroidNG/src/main/java/de/kuschku/quasseldroid_ng/ui/Themes.java b/QuasselDroidNG/src/main/java/de/kuschku/quasseldroid_ng/ui/Themes.java index 950a3ae1703c668d8174b14e611eb174d984f301..edc8b5b8941aeb7e19b0c3e217fa5ccb0f7391d1 100644 --- a/QuasselDroidNG/src/main/java/de/kuschku/quasseldroid_ng/ui/Themes.java +++ b/QuasselDroidNG/src/main/java/de/kuschku/quasseldroid_ng/ui/Themes.java @@ -10,6 +10,7 @@ public enum Themes { MATERIAL_LIGHT(R.style.Material_Light); public final int themeId; + Themes(@StyleRes int themeId) { this.themeId = themeId; } diff --git a/QuasselDroidNG/src/main/java/de/kuschku/quasseldroid_ng/ui/chat/ChatActivity.java b/QuasselDroidNG/src/main/java/de/kuschku/quasseldroid_ng/ui/chat/ChatActivity.java index 3452ddba9e9052506de53ae2b8125ce6d1a12a6e..5e8698c125f1ade3f8eb9fd35c4f5b0fa06bb767 100644 --- a/QuasselDroidNG/src/main/java/de/kuschku/quasseldroid_ng/ui/chat/ChatActivity.java +++ b/QuasselDroidNG/src/main/java/de/kuschku/quasseldroid_ng/ui/chat/ChatActivity.java @@ -39,57 +39,40 @@ import de.kuschku.util.DrawerUtils; import de.kuschku.util.instancestateutil.Storable; import de.kuschku.util.instancestateutil.Store; -import static de.kuschku.util.AndroidAssert.*; +import static de.kuschku.util.AndroidAssert.assertNotNull; +import static de.kuschku.util.AndroidAssert.assertTrue; @UiThread public class ChatActivity extends AppCompatActivity { + @NonNull + private final Status status = new Status(); @Bind(R.id.drawer_left) DrawerLayout drawerLeft; - @Bind(R.id.navigation_left) NavigationView navigationLeft; - @Bind(R.id.toolbar) Toolbar toolbar; - @Bind(R.id.sliding_layout) SlidingUpPanelLayout slidingLayout; - @Bind(R.id.chatline) AppCompatEditText chatline; - @Bind(R.id.send) AppCompatImageButton send; - @Bind(R.id.msg_history) RecyclerView msgHistory; - @Bind(R.id.swipe_view) SwipeRefreshLayout swipeView; - @Bind(R.id.messages) RecyclerView messages; - @Bind(R.id.navigation_header_container) RelativeLayout navigationHeaderContainer; - @Bind(R.id.buffer_view_spinner) AppCompatSpinner bufferViewSpinner; - @Nullable private QuasselService.LocalBinder binder; @Nullable private ClientBackgroundThread backgroundThread; - private SharedPreferences preferences; - - @NonNull - private final Status status = new Status(); - private static class Status extends Storable { - @Store public int bufferId = -1; - @Store public int bufferViewConfigId = -1; - } - @Nullable private ServiceConnection serviceConnection = new ServiceConnection() { @UiThread @@ -172,7 +155,7 @@ public class ChatActivity extends AppCompatActivity { selectBufferViewConfig(status.bufferViewConfigId); } - private void selectBufferViewConfig(@IntRange(from=-1) int bufferViewConfigId) { + private void selectBufferViewConfig(@IntRange(from = -1) int bufferViewConfigId) { if (bufferViewConfigId == -1) { // TODO: Implement this @@ -185,7 +168,7 @@ public class ChatActivity extends AppCompatActivity { } } - private void selectBuffer(@IntRange(from=-1) int bufferId) { + private void selectBuffer(@IntRange(from = -1) int bufferId) { if (bufferId == -1) { } else { @@ -197,4 +180,11 @@ public class ChatActivity extends AppCompatActivity { // TODO: Implement this } + + private static class Status extends Storable { + @Store + public int bufferId = -1; + @Store + public int bufferViewConfigId = -1; + } } diff --git a/QuasselDroidNG/src/main/java/de/kuschku/quasseldroid_ng/ui/chat/chatview/ChatMessageRenderer.java b/QuasselDroidNG/src/main/java/de/kuschku/quasseldroid_ng/ui/chat/chatview/ChatMessageRenderer.java index d8af848d8d478d82faa668c1ee2db86f31ad8ff3..2f227abdb475e3fb43ef6009cfa5269eb9cc127c 100644 --- a/QuasselDroidNG/src/main/java/de/kuschku/quasseldroid_ng/ui/chat/chatview/ChatMessageRenderer.java +++ b/QuasselDroidNG/src/main/java/de/kuschku/quasseldroid_ng/ui/chat/chatview/ChatMessageRenderer.java @@ -11,15 +11,18 @@ import android.util.Log; import org.joda.time.format.DateTimeFormatter; import de.kuschku.libquassel.Client; +import de.kuschku.libquassel.localtypes.Buffer; import de.kuschku.libquassel.message.Message; import de.kuschku.quasseldroid_ng.R; -import de.kuschku.util.ui.DateFormatHelper; +import de.kuschku.util.annotationbind.AutoBinder; +import de.kuschku.util.annotationbind.AutoString; import de.kuschku.util.irc.IrcFormatHelper; import de.kuschku.util.irc.IrcUserUtils; +import de.kuschku.util.ui.DateFormatHelper; import de.kuschku.util.ui.SpanFormatter; import de.kuschku.util.ui.ThemeUtil; -import de.kuschku.util.annotationbind.AutoString; -import de.kuschku.util.annotationbind.AutoBinder; + +import static de.kuschku.util.AndroidAssert.assertNotNull; @UiThread public class ChatMessageRenderer { @@ -29,10 +32,17 @@ public class ChatMessageRenderer { private final FormatStrings strings; @NonNull private final IrcFormatHelper helper; + @NonNull + private final MessageStyleContainer highlightStyle; + @NonNull + private final MessageStyleContainer serverStyle; + @NonNull + private final MessageStyleContainer actionStyle; + @NonNull + private final MessageStyleContainer plainStyle; @Nullable private Client client; private boolean fullHostmask = false; - public ChatMessageRenderer(@NonNull Context ctx) { ThemeUtil themeUtil = new ThemeUtil(ctx); this.format = DateFormatHelper.getTimeFormatter(ctx); @@ -65,29 +75,6 @@ public class ChatMessageRenderer { ); } - private static class MessageStyleContainer{ - public final @ColorInt int textColor; - public final int fontstyle; - public final @ColorInt int timeColor; - public final @ColorInt int bgColor; - - public MessageStyleContainer(int textColor, int fontstyle, int timeColor, int bgColor) { - this.textColor = textColor; - this.fontstyle = fontstyle; - this.timeColor = timeColor; - this.bgColor = bgColor; - } - } - - @NonNull - private final MessageStyleContainer highlightStyle; - @NonNull - private final MessageStyleContainer serverStyle; - @NonNull - private final MessageStyleContainer actionStyle; - @NonNull - private final MessageStyleContainer plainStyle; - public void setClient(@NonNull Client client) { this.client = client; } @@ -115,6 +102,16 @@ public class ChatMessageRenderer { return formatNick(hostmask, fullHostmask); } + @NonNull + private CharSequence getBufferName(Message message) { + assertNotNull(client); + Buffer buffer = client.getBuffer(message.bufferInfo.id); + assertNotNull(buffer); + String name = buffer.getName(); + assertNotNull(name); + return name; + } + private void onBindPlain(@NonNull MessageViewHolder holder, @NonNull Message message) { applyStyle(holder, plainStyle, highlightStyle, message.flags.Highlight); holder.content.setText( @@ -165,7 +162,7 @@ public class ChatMessageRenderer { applyStyle(holder, serverStyle, highlightStyle, message.flags.Highlight); holder.content.setText(strings.formatJoin( formatNick(message.sender), - client.getBuffer(message.bufferInfo.id).getName() + getBufferName(message) )); } @@ -173,7 +170,7 @@ public class ChatMessageRenderer { applyStyle(holder, serverStyle, highlightStyle, message.flags.Highlight); holder.content.setText(strings.formatPart( formatNick(message.sender), - client.getBuffer(message.bufferInfo.id).getName(), + getBufferName(message), message.content )); } @@ -235,7 +232,7 @@ public class ChatMessageRenderer { applyStyle(holder, serverStyle, highlightStyle, message.flags.Highlight); holder.content.setText(message.toString()); } - + public void onBind(@NonNull MessageViewHolder holder, @NonNull Message message) { holder.time.setText(format.print(message.time)); switch (message.type) { @@ -296,6 +293,26 @@ public class ChatMessageRenderer { } } + private static class MessageStyleContainer { + public final + @ColorInt + int textColor; + public final int fontstyle; + public final + @ColorInt + int timeColor; + public final + @ColorInt + int bgColor; + + public MessageStyleContainer(int textColor, int fontstyle, int timeColor, int bgColor) { + this.textColor = textColor; + this.fontstyle = fontstyle; + this.timeColor = timeColor; + this.bgColor = bgColor; + } + } + public static class FormatStrings { @AutoString(R.string.username_hostmask) public String username_hostmask; @@ -365,6 +382,7 @@ public class ChatMessageRenderer { public CharSequence formatPart(@NonNull CharSequence user, @NonNull CharSequence channel) { return SpanFormatter.format(message_part, user, channel); } + @NonNull public CharSequence formatPart(@NonNull CharSequence user, @NonNull CharSequence channel, @Nullable CharSequence reason) { if (reason == null || reason.length() == 0) return formatPart(user, channel); @@ -376,6 +394,7 @@ public class ChatMessageRenderer { public CharSequence formatQuit(@NonNull CharSequence user) { return SpanFormatter.format(message_quit, user); } + @NonNull public CharSequence formatQuit(@NonNull CharSequence user, @Nullable CharSequence reason) { if (reason == null || reason.length() == 0) return formatQuit(user); @@ -392,6 +411,7 @@ public class ChatMessageRenderer { public CharSequence formatKick(@NonNull CharSequence user, @NonNull CharSequence kicked) { return SpanFormatter.format(message_kick, user, kicked); } + @NonNull public CharSequence formatKick(@NonNull CharSequence user, @NonNull CharSequence kicked, @Nullable CharSequence reason) { if (reason == null || reason.length() == 0) return formatKick(user, kicked); @@ -408,6 +428,7 @@ public class ChatMessageRenderer { public CharSequence formatNick(@NonNull CharSequence newNick) { return SpanFormatter.format(message_nick_self, newNick); } + @NonNull public CharSequence formatNick(@NonNull CharSequence oldNick, @Nullable CharSequence newNick) { if (newNick == null || newNick.length() == 0) return formatNick(oldNick); diff --git a/QuasselDroidNG/src/main/java/de/kuschku/quasseldroid_ng/ui/chat/chatview/MessageAdapter.java b/QuasselDroidNG/src/main/java/de/kuschku/quasseldroid_ng/ui/chat/chatview/MessageAdapter.java index da97aa710dc343fcec26b288ef2db00faca316fb..a2d0d3f5ff5cb546c97555665859ac86c04870d2 100644 --- a/QuasselDroidNG/src/main/java/de/kuschku/quasseldroid_ng/ui/chat/chatview/MessageAdapter.java +++ b/QuasselDroidNG/src/main/java/de/kuschku/quasseldroid_ng/ui/chat/chatview/MessageAdapter.java @@ -13,23 +13,23 @@ import de.kuschku.libquassel.message.Message; import de.kuschku.quasseldroid_ng.R; import de.kuschku.util.observables.AutoScroller; import de.kuschku.util.observables.callbacks.UICallback; +import de.kuschku.util.observables.callbacks.wrappers.AdapterUICallbackWrapper; import de.kuschku.util.observables.lists.IObservableList; import de.kuschku.util.observables.lists.ObservableComparableSortedList; import de.kuschku.util.observables.lists.ObservableSortedList; -import de.kuschku.util.observables.callbacks.wrappers.AdapterUICallbackWrapper; -import static de.kuschku.util.AndroidAssert.*; +import static de.kuschku.util.AndroidAssert.assertNotNull; @UiThread public class MessageAdapter extends RecyclerView.Adapter<MessageViewHolder> { - @NonNull - private IObservableList<UICallback, Message> messageList = new ObservableComparableSortedList<>(Message.class); @NonNull private final ChatMessageRenderer renderer; @NonNull private final LayoutInflater inflater; @NonNull private final UICallback callback; + @NonNull + private IObservableList<UICallback, Message> messageList = new ObservableComparableSortedList<>(Message.class); public MessageAdapter(@NonNull Context ctx, @Nullable AutoScroller scroller) { this.inflater = LayoutInflater.from(ctx); diff --git a/QuasselDroidNG/src/main/java/de/kuschku/quasseldroid_ng/ui/chat/drawer/NetworkWrapper.java b/QuasselDroidNG/src/main/java/de/kuschku/quasseldroid_ng/ui/chat/drawer/NetworkWrapper.java index 54df14d9832a90c4873ba3fac6f7da558d668f78..3a9beab7b9c8fabb52efe22754e4f15c5b2114b7 100644 --- a/QuasselDroidNG/src/main/java/de/kuschku/quasseldroid_ng/ui/chat/drawer/NetworkWrapper.java +++ b/QuasselDroidNG/src/main/java/de/kuschku/quasseldroid_ng/ui/chat/drawer/NetworkWrapper.java @@ -21,16 +21,16 @@ import de.kuschku.libquassel.message.Message; import de.kuschku.libquassel.syncables.types.BufferViewConfig; import de.kuschku.libquassel.syncables.types.Network; import de.kuschku.quasseldroid_ng.R; -import de.kuschku.util.observables.callbacks.wrappers.ChildUICallbackWrapper; -import de.kuschku.util.observables.callbacks.wrappers.MultiUIChildCallback; import de.kuschku.util.observables.ContentComparable; import de.kuschku.util.observables.callbacks.ElementCallback; import de.kuschku.util.observables.callbacks.UIChildCallback; +import de.kuschku.util.observables.callbacks.wrappers.ChildUICallbackWrapper; +import de.kuschku.util.observables.callbacks.wrappers.MultiUIChildCallback; import de.kuschku.util.observables.lists.ObservableSortedList; import de.kuschku.util.ui.Bindable; @UiThread -public class NetworkWrapper implements ParentListItem, Nameable<NetworkWrapper>,ContentComparable<NetworkWrapper> { +public class NetworkWrapper implements ParentListItem, Nameable<NetworkWrapper>, ContentComparable<NetworkWrapper> { @NonNull private final MultiUIChildCallback callback = MultiUIChildCallback.of(); @@ -38,11 +38,10 @@ public class NetworkWrapper implements ParentListItem, Nameable<NetworkWrapper>, private final Network network; @NonNull private final Client client; - - @NonNull - private ObservableSortedList<BufferWrapper> buffers = new ObservableSortedList<>(BufferWrapper.class, new BufferWrapperSorterWrapper(getSorter(SortMode.NONE))); @NonNull private final ChildUICallbackWrapper wrapper = new ChildUICallbackWrapper(callback); + @NonNull + private ObservableSortedList<BufferWrapper> buffers = new ObservableSortedList<>(BufferWrapper.class, new BufferWrapperSorterWrapper(getSorter(SortMode.NONE))); private int groupId; public NetworkWrapper(@NonNull Network network, @NonNull Client client, @NonNull BufferViewConfig bufferViewConfig, @NonNull SortMode sortMode, int groupId) { @@ -170,6 +169,13 @@ public class NetworkWrapper implements ParentListItem, Nameable<NetworkWrapper>, return network.compareTo(another.network); } + public enum SortMode { + NONE, + ALPHABETICAL, + RECENT_ACTIVITY, + LAST_SEEN + } + public static class ViewHolder extends ParentViewHolder implements Bindable<NetworkWrapper> { @Bind(R.id.material_drawer_icon) ImageView materialDrawerIcon; @@ -192,13 +198,6 @@ public class NetworkWrapper implements ParentListItem, Nameable<NetworkWrapper>, } } - public enum SortMode { - NONE, - ALPHABETICAL, - RECENT_ACTIVITY, - LAST_SEEN - } - private static class BufferWrapperSorterWrapper implements ObservableSortedList.ItemComparator<BufferWrapper> { @NonNull private final ObservableSortedList.ItemComparator<Buffer> wrapped; diff --git a/QuasselDroidNG/src/main/java/de/kuschku/util/CompatibilityUtils.java b/QuasselDroidNG/src/main/java/de/kuschku/util/CompatibilityUtils.java index 7a1a453a51866b4c6a5173871cac0d8076f29e7c..527122544cee9dbe23530c1e41e56b6a3578b4e8 100644 --- a/QuasselDroidNG/src/main/java/de/kuschku/util/CompatibilityUtils.java +++ b/QuasselDroidNG/src/main/java/de/kuschku/util/CompatibilityUtils.java @@ -16,8 +16,9 @@ public class CompatibilityUtils { /** * This method is used to check if the current device supports Sockets with the KeepAlive flag. - * + * <p> * As that feature is only missing on Chromium devices, we just check for that + * * @return Does the current device support KeepAlive sockets? */ public static boolean deviceSupportsKeepAlive() { @@ -26,8 +27,9 @@ public class CompatibilityUtils { /** * This method is used to check if the device supports SyncFlush - * + * <p> * As that feature was only added in KitKat, we just check for the device version. + * * @return Does the current device support SyncFlush natively? */ public static boolean deviceSupportsCompression() { @@ -37,6 +39,7 @@ public class CompatibilityUtils { /** * Creates a SyncFlush output stream, even if the current device does not support doing so * natively. + * * @param rawOut the raw output stream to be wrapped * @return The wrapping output stream */ @@ -48,18 +51,19 @@ public class CompatibilityUtils { /** * Creates a SyncFlush Deflater for use on pre-KitKat Android + * * @return The modified Deflater, or null if the creation failed */ @Nullable private static Deflater createSyncFlushDeflater() { Deflater def = new Deflater(); - try { - Field f = def.getClass().getDeclaredField("flushParm"); - f.setAccessible(true); - f.setInt(def, 2); // Z_SYNC_FLUSH - } catch (Exception e) { - return null; - } + try { + Field f = def.getClass().getDeclaredField("flushParm"); + f.setAccessible(true); + f.setInt(def, 2); // Z_SYNC_FLUSH + } catch (Exception e) { + return null; + } return def; } } diff --git a/QuasselDroidNG/src/main/java/de/kuschku/util/Objects.java b/QuasselDroidNG/src/main/java/de/kuschku/util/Objects.java index 4b77b16d1bb2c8554ee879d0c06a7f1d4126948f..6195892b84a4a188fe3557181ac1ab1ec6576f95 100644 --- a/QuasselDroidNG/src/main/java/de/kuschku/util/Objects.java +++ b/QuasselDroidNG/src/main/java/de/kuschku/util/Objects.java @@ -8,11 +8,13 @@ import java.util.Comparator; /** * Utility methods for objects. + * * @see java.util.Objects * @since 1.7 */ public final class Objects { - private Objects() {} + private Objects() { + } /** * Returns 0 if {@code a == b}, or {@code c.compare(a, b)} otherwise. diff --git a/QuasselDroidNG/src/main/java/de/kuschku/util/ReflectionUtils.java b/QuasselDroidNG/src/main/java/de/kuschku/util/ReflectionUtils.java index af95b877c244473ea6bfdf545673241dcd174a6f..ff536e62944f3b7dbeccaee12eb5610d2168b280 100644 --- a/QuasselDroidNG/src/main/java/de/kuschku/util/ReflectionUtils.java +++ b/QuasselDroidNG/src/main/java/de/kuschku/util/ReflectionUtils.java @@ -12,14 +12,14 @@ import java.util.List; import de.kuschku.libquassel.exceptions.SyncInvocationException; import de.kuschku.libquassel.primitives.types.QVariant; -import static de.kuschku.util.AndroidAssert.*; +import static de.kuschku.util.AndroidAssert.assertNotNull; public class ReflectionUtils { private ReflectionUtils() { } - private static void unboxList(@NonNull Object[] list){ + private static void unboxList(@NonNull Object[] list) { for (int i = 0; i < list.length; i++) { if (list[i] instanceof QVariant) list[i] = ((QVariant) list[i]).data; diff --git a/QuasselDroidNG/src/main/java/de/kuschku/util/annotationbind/AutoColor.java b/QuasselDroidNG/src/main/java/de/kuschku/util/annotationbind/AutoColor.java index d54cf348fc33631e8ec14338d8fe070a165304af..d0edd68c09a1f26871c33648a0bf232523d297c3 100644 --- a/QuasselDroidNG/src/main/java/de/kuschku/util/annotationbind/AutoColor.java +++ b/QuasselDroidNG/src/main/java/de/kuschku/util/annotationbind/AutoColor.java @@ -8,6 +8,5 @@ import java.lang.annotation.RetentionPolicy; @Retention(RetentionPolicy.RUNTIME) public @interface AutoColor { - @NonNull @AnyRes - int[] value() default {}; + @NonNull @AnyRes int[] value() default {}; } diff --git a/QuasselDroidNG/src/main/java/de/kuschku/util/annotationbind/AutoString.java b/QuasselDroidNG/src/main/java/de/kuschku/util/annotationbind/AutoString.java index 1399b7b9533cf71ea006b211be3f157714168ca4..bf6c4914120682a372cf186920a9ba8f00fd8ea3 100644 --- a/QuasselDroidNG/src/main/java/de/kuschku/util/annotationbind/AutoString.java +++ b/QuasselDroidNG/src/main/java/de/kuschku/util/annotationbind/AutoString.java @@ -8,6 +8,5 @@ import java.lang.annotation.RetentionPolicy; @Retention(RetentionPolicy.RUNTIME) public @interface AutoString { - @NonNull @AnyRes - int[] value() default {}; + @NonNull @AnyRes int[] value() default {}; } diff --git a/QuasselDroidNG/src/main/java/de/kuschku/util/instancestateutil/Store.java b/QuasselDroidNG/src/main/java/de/kuschku/util/instancestateutil/Store.java index bc7cbdf8ba0f14bbb2f47e4ed6bfcf0b3574c9d4..bced9ef0b61089cae54d0196b047b3699b5e7769 100644 --- a/QuasselDroidNG/src/main/java/de/kuschku/util/instancestateutil/Store.java +++ b/QuasselDroidNG/src/main/java/de/kuschku/util/instancestateutil/Store.java @@ -11,6 +11,7 @@ import java.lang.annotation.Target; @Retention(RetentionPolicy.RUNTIME) public @interface Store { @NonNull String name() default ""; + @NonNull Type type() default Type.INVALID; enum Type { diff --git a/QuasselDroidNG/src/main/java/de/kuschku/util/irc/IrcFormatHelper.java b/QuasselDroidNG/src/main/java/de/kuschku/util/irc/IrcFormatHelper.java index 945cf7794857225e47bd2878a6ff4cd9bf3cca3d..11aa24459745b29046e1629de3487747de22e12c 100644 --- a/QuasselDroidNG/src/main/java/de/kuschku/util/irc/IrcFormatHelper.java +++ b/QuasselDroidNG/src/main/java/de/kuschku/util/irc/IrcFormatHelper.java @@ -27,12 +27,18 @@ import de.kuschku.quasseldroid_ng.R; import de.kuschku.util.ui.ThemeUtil; public class IrcFormatHelper { - @NonNull private static final String scheme = "(?:(?:mailto:|(?:[+.-]?\\w)+://)|www(?=\\.\\S+\\.))"; - @NonNull private static final String authority = "(?:(?:[,.;@:]?[-\\w]+)+\\.?|\\[[0-9a-f:.]+\\])(?::\\d+)?"; - @NonNull private static final String urlChars = "(?:[,.;:]*[\\w~@/?&=+$()!%#*-])"; - @NonNull private static final String urlEnd = "(?:>|[,.;:\"]*\\s|\\b|$)"; - @NonNull private static final Pattern urlPattern = Pattern.compile(String.format("\\b(%s%s(?:/%s*)?)%s", scheme, authority, urlChars, urlEnd), Pattern.CASE_INSENSITIVE); - @NonNull private static final Pattern channelPattern = Pattern.compile("((?:#|![A-Z0-9]{5})[^,:\\s]+(?::[^,:\\s]+)?)\\b", Pattern.CASE_INSENSITIVE); + @NonNull + private static final String scheme = "(?:(?:mailto:|(?:[+.-]?\\w)+://)|www(?=\\.\\S+\\.))"; + @NonNull + private static final String authority = "(?:(?:[,.;@:]?[-\\w]+)+\\.?|\\[[0-9a-f:.]+\\])(?::\\d+)?"; + @NonNull + private static final String urlChars = "(?:[,.;:]*[\\w~@/?&=+$()!%#*-])"; + @NonNull + private static final String urlEnd = "(?:>|[,.;:\"]*\\s|\\b|$)"; + @NonNull + private static final Pattern urlPattern = Pattern.compile(String.format("\\b(%s%s(?:/%s*)?)%s", scheme, authority, urlChars, urlEnd), Pattern.CASE_INSENSITIVE); + @NonNull + private static final Pattern channelPattern = Pattern.compile("((?:#|![A-Z0-9]{5})[^,:\\s]+(?::[^,:\\s]+)?)\\b", Pattern.CASE_INSENSITIVE); @NonNull private final ThemeUtil.Colors colors; diff --git a/QuasselDroidNG/src/main/java/de/kuschku/util/irc/IrcUserUtils.java b/QuasselDroidNG/src/main/java/de/kuschku/util/irc/IrcUserUtils.java index 2f5eb93eabff5e948f1ed8a0d102bad9734921d2..e80e730180e4847757c8be0bc13814d5732e4e11 100644 --- a/QuasselDroidNG/src/main/java/de/kuschku/util/irc/IrcUserUtils.java +++ b/QuasselDroidNG/src/main/java/de/kuschku/util/irc/IrcUserUtils.java @@ -26,6 +26,26 @@ public class IrcUserUtils { return ((len < val.length)) ? str.substring(0, len) : str; } + @NonNull + public static String getNick(@NonNull String hostmask) { + return hostmask.split("!")[0]; + } + + @NonNull + public static String getUser(@NonNull String hostmask) { + return getMask(hostmask).split("@")[0]; + } + + @NonNull + public static String getHost(@NonNull String hostmask) { + return getMask(hostmask).split("@")[1]; + } + + @NonNull + public static String getMask(@NonNull String hostmask) { + return hostmask.split("!")[1]; + } + public static class CRCUtils { private CRCUtils() { @@ -67,24 +87,4 @@ public class IrcUserUtils { return crcout; } } - - @NonNull - public static String getNick(@NonNull String hostmask) { - return hostmask.split("!")[0]; - } - - @NonNull - public static String getUser(@NonNull String hostmask) { - return getMask(hostmask).split("@")[0]; - } - - @NonNull - public static String getHost(@NonNull String hostmask) { - return getMask(hostmask).split("@")[1]; - } - - @NonNull - public static String getMask(@NonNull String hostmask) { - return hostmask.split("!")[1]; - } } diff --git a/QuasselDroidNG/src/main/java/de/kuschku/util/niohelpers/WrappedChannel.java b/QuasselDroidNG/src/main/java/de/kuschku/util/niohelpers/WrappedChannel.java index b7ac198d362ee20a0eb70d71dc43488b79f3c335..038786538d34b21fb235aef09ea02918755d2b25 100644 --- a/QuasselDroidNG/src/main/java/de/kuschku/util/niohelpers/WrappedChannel.java +++ b/QuasselDroidNG/src/main/java/de/kuschku/util/niohelpers/WrappedChannel.java @@ -20,15 +20,14 @@ import java.util.zip.InflaterInputStream; import de.kuschku.util.CompatibilityUtils; public class WrappedChannel implements Flushable, ByteChannel, InterruptibleChannel { - @Nullable - private DataInputStream in; - @Nullable - private DataOutputStream out; - @Nullable private final InputStream rawIn; @Nullable private final OutputStream rawOut; + @Nullable + private DataInputStream in; + @Nullable + private DataOutputStream out; private WrappedChannel(@Nullable InputStream in, @Nullable OutputStream out) { this.rawIn = in; diff --git a/QuasselDroidNG/src/main/java/de/kuschku/util/observables/IObservable.java b/QuasselDroidNG/src/main/java/de/kuschku/util/observables/IObservable.java index 9d0ad987f580bb7789a3385ddee4710bf89549dd..04424e24b6ced75da643918ea8872682373e5b97 100644 --- a/QuasselDroidNG/src/main/java/de/kuschku/util/observables/IObservable.java +++ b/QuasselDroidNG/src/main/java/de/kuschku/util/observables/IObservable.java @@ -2,5 +2,6 @@ package de.kuschku.util.observables; public interface IObservable<T> { void addCallback(T callback); + void removeCallback(T callback); } diff --git a/QuasselDroidNG/src/main/java/de/kuschku/util/observables/lists/ObservableList.java b/QuasselDroidNG/src/main/java/de/kuschku/util/observables/lists/ObservableList.java index 68d4b85f5c32a430edb52a71977345e458c5596d..03aa48c28bd1f9a4403bc6b91290207f07be917f 100644 --- a/QuasselDroidNG/src/main/java/de/kuschku/util/observables/lists/ObservableList.java +++ b/QuasselDroidNG/src/main/java/de/kuschku/util/observables/lists/ObservableList.java @@ -6,8 +6,8 @@ import java.util.ArrayList; import java.util.Collection; import java.util.Iterator; -import de.kuschku.util.observables.callbacks.wrappers.MultiUICallbackWrapper; import de.kuschku.util.observables.callbacks.UICallback; +import de.kuschku.util.observables.callbacks.wrappers.MultiUICallbackWrapper; public class ObservableList<T> extends ArrayList<T> implements IObservableList<UICallback, T> { @NonNull diff --git a/QuasselDroidNG/src/main/java/de/kuschku/util/observables/lists/ObservableSortedList.java b/QuasselDroidNG/src/main/java/de/kuschku/util/observables/lists/ObservableSortedList.java index 72a8eb14c0a2599460ac56b5254733faf9c03342..97901b4ed1c8e2354904c27d3c547b4c20d478dc 100644 --- a/QuasselDroidNG/src/main/java/de/kuschku/util/observables/lists/ObservableSortedList.java +++ b/QuasselDroidNG/src/main/java/de/kuschku/util/observables/lists/ObservableSortedList.java @@ -16,7 +16,7 @@ import de.kuschku.util.backports.Stream; import de.kuschku.util.observables.callbacks.UICallback; import de.kuschku.util.observables.callbacks.wrappers.MultiUICallbackWrapper; -import static de.kuschku.util.AndroidAssert.*; +import static de.kuschku.util.AndroidAssert.assertTrue; public class ObservableSortedList<T> implements IObservableList<UICallback, T> { @NonNull @@ -28,6 +28,16 @@ public class ObservableSortedList<T> implements IObservableList<UICallback, T> { @NonNull private ItemComparator<T> comparator; + public ObservableSortedList(@NonNull Class<T> cl, @NonNull ItemComparator<T> comparator) { + this(cl, comparator, false); + } + + public ObservableSortedList(@NonNull Class<T> cl, @NonNull ItemComparator<T> comparator, boolean reverse) { + this.list = new SortedList<>(cl, new Callback()); + this.comparator = comparator; + this.reverse = reverse; + } + @Override public void addCallback(@NonNull UICallback callback) { this.callback.addCallback(callback); @@ -42,16 +52,6 @@ public class ObservableSortedList<T> implements IObservableList<UICallback, T> { this.comparator = comparator; } - public ObservableSortedList(@NonNull Class<T> cl, @NonNull ItemComparator<T> comparator) { - this(cl, comparator, false); - } - - public ObservableSortedList(@NonNull Class<T> cl, @NonNull ItemComparator<T> comparator, boolean reverse) { - this.list = new SortedList<>(cl, new Callback()); - this.comparator = comparator; - this.reverse = reverse; - } - @Nullable public T last() { if (list.size() == 0) return null; @@ -193,6 +193,14 @@ public class ObservableSortedList<T> implements IObservableList<UICallback, T> { throw new MaterialDialog.NotImplementedException("Not implemented"); } + public interface ItemComparator<T> { + int compare(T o1, T o2); + + boolean areContentsTheSame(T oldItem, T newItem); + + boolean areItemsTheSame(T item1, T item2); + } + class Callback extends SortedList.Callback<T> { @Override public int compare(T o1, T o2) { @@ -276,7 +284,7 @@ public class ObservableSortedList<T> implements IObservableList<UICallback, T> { @Override public int nextIndex() { - return position+1; + return position + 1; } @Override @@ -286,7 +294,7 @@ public class ObservableSortedList<T> implements IObservableList<UICallback, T> { @Override public int previousIndex() { - return position-1; + return position - 1; } @Override @@ -301,12 +309,4 @@ public class ObservableSortedList<T> implements IObservableList<UICallback, T> { list.add(object); } } - - public interface ItemComparator<T> { - int compare(T o1, T o2); - - boolean areContentsTheSame(T oldItem, T newItem); - - boolean areItemsTheSame(T item1, T item2); - } } diff --git a/QuasselDroidNG/src/main/java/de/kuschku/util/ui/SpanFormatter.java b/QuasselDroidNG/src/main/java/de/kuschku/util/ui/SpanFormatter.java index f10098f743e6a23a9b71f4e8314ef5bcdec8f0da..992f1884e4289ef92c5bed1ba0cc39fad4ca1729 100644 --- a/QuasselDroidNG/src/main/java/de/kuschku/util/ui/SpanFormatter.java +++ b/QuasselDroidNG/src/main/java/de/kuschku/util/ui/SpanFormatter.java @@ -16,26 +16,26 @@ package de.kuschku.util.ui; -import java.util.Locale; -import java.util.regex.Matcher; -import java.util.regex.Pattern; - import android.support.annotation.NonNull; +import android.text.Spannable; import android.text.SpannableStringBuilder; import android.text.Spanned; import android.text.SpannedString; -import android.text.Spannable; + +import java.util.Locale; +import java.util.regex.Matcher; +import java.util.regex.Pattern; /** * Provides {@link String#format} style functions that work with {@link Spanned} strings and preserve formatting. * * @author George T. Steel - * */ public class SpanFormatter { - private static final Pattern FORMAT_SEQUENCE = Pattern.compile("%([0-9]+\\$|<?)([^a-zA-z%]*)([[a-zA-Z%]&&[^tT]]|[tT][a-zA-Z])"); + private static final Pattern FORMAT_SEQUENCE = Pattern.compile("%([0-9]+\\$|<?)([^a-zA-z%]*)([[a-zA-Z%]&&[^tT]]|[tT][a-zA-Z])"); - private SpanFormatter(){} + private SpanFormatter() { + } /** * Version of {@link String#format(String, Object...)} that works on {@link Spanned} strings to preserve rich text formatting. @@ -44,10 +44,9 @@ public class SpanFormatter { * Any duplicates will appear as text only. * * @param format the format string (see {@link java.util.Formatter#format}) - * @param args - * the list of arguments passed to the formatter. If there are - * more arguments than required by {@code format}, - * additional arguments are ignored. + * @param args the list of arguments passed to the formatter. If there are + * more arguments than required by {@code format}, + * additional arguments are ignored. * @return the formatted string (with spans). */ @NonNull @@ -61,25 +60,23 @@ public class SpanFormatter { * Due to the way {@link Spannable}s work, any argument's spans will can only be included <b>once</b> in the result. * Any duplicates will appear as text only. * - * @param locale - * the locale to apply; {@code null} value means no localization. + * @param locale the locale to apply; {@code null} value means no localization. * @param format the format string (see {@link java.util.Formatter#format}) - * @param args - * the list of arguments passed to the formatter. + * @param args the list of arguments passed to the formatter. * @return the formatted string (with spans). * @see String#format(Locale, String, Object...) */ @NonNull - public static SpannedString format(@NonNull Locale locale, @NonNull CharSequence format, Object... args){ + public static SpannedString format(@NonNull Locale locale, @NonNull CharSequence format, Object... args) { SpannableStringBuilder out = new SpannableStringBuilder(format); int i = 0; int argAt = -1; - while (i < out.length()){ + while (i < out.length()) { Matcher m = FORMAT_SEQUENCE.matcher(out); if (!m.find(i)) break; - i=m.start(); + i = m.start(); int exprEnd = m.end(); String argTerm = m.group(1); @@ -88,9 +85,9 @@ public class SpanFormatter { CharSequence cookedArg; - if (typeTerm.equals("%")){ + if (typeTerm.equals("%")) { cookedArg = "%"; - }else{ + } else { int argIdx; switch (argTerm) { case "": @@ -106,10 +103,10 @@ public class SpanFormatter { Object argItem = args[argIdx]; - if (typeTerm.equals("s") && argItem instanceof Spanned){ + if (typeTerm.equals("s") && argItem instanceof Spanned) { cookedArg = (Spanned) argItem; - }else{ - cookedArg = String.format(locale, "%"+modTerm+typeTerm, argItem); + } else { + cookedArg = String.format(locale, "%" + modTerm + typeTerm, argItem); } } diff --git a/QuasselDroidNG/src/main/java/de/kuschku/util/ui/ThemeUtil.java b/QuasselDroidNG/src/main/java/de/kuschku/util/ui/ThemeUtil.java index f795de2bf7c084219e1fd304d86f62af8a90fd21..425dd094500a56d7fc00c24d2f0b7f7ecf6baca4 100644 --- a/QuasselDroidNG/src/main/java/de/kuschku/util/ui/ThemeUtil.java +++ b/QuasselDroidNG/src/main/java/de/kuschku/util/ui/ThemeUtil.java @@ -1,7 +1,6 @@ package de.kuschku.util.ui; import android.content.Context; -import android.content.res.Resources; import android.support.annotation.ColorInt; import android.support.annotation.NonNull; import android.support.annotation.UiThread; @@ -13,7 +12,8 @@ import de.kuschku.util.annotationbind.AutoBinder; import de.kuschku.util.annotationbind.AutoColor; public class ThemeUtil { - @NonNull public final Colors colors = new Colors(); + @NonNull + public final Colors colors = new Colors(); public ThemeUtil(@NonNull Context ctx) { initColors(new ContextThemeWrapper(ctx, ctx.getTheme())); @@ -34,51 +34,65 @@ public class ThemeUtil { public static class Colors { @AutoColor(android.R.color.transparent) - @ColorInt public int transparent; + @ColorInt + public int transparent; @AutoColor({R.attr.senderColor0, R.attr.senderColor1, R.attr.senderColor2, R.attr.senderColor3, R.attr.senderColor4, R.attr.senderColor5, R.attr.senderColor6, R.attr.senderColor7, R.attr.senderColor8, R.attr.senderColor9, R.attr.senderColorA, R.attr.senderColorB, R.attr.senderColorC, R.attr.senderColorD, R.attr.senderColorE, R.attr.senderColorF}) - @ColorInt public int[] senderColors; + @ColorInt + public int[] senderColors; @AutoColor({R.attr.mircColor0, R.attr.mircColor1, R.attr.mircColor2, R.attr.mircColor3, R.attr.mircColor4, R.attr.mircColor5, R.attr.mircColor6, R.attr.mircColor7, R.attr.mircColor8, R.attr.mircColor9, R.attr.mircColorA, R.attr.mircColorB, R.attr.mircColorC, R.attr.mircColorD, R.attr.mircColorE, R.attr.mircColorF}) - @ColorInt public int[] mircColors; + @ColorInt + public int[] mircColors; @AutoColor(R.attr.colorForeground) - @ColorInt public int colorForeground; + @ColorInt + public int colorForeground; @AutoColor(R.attr.colorForegroundHighlight) - @ColorInt public int colorForegroundHighlight; + @ColorInt + public int colorForegroundHighlight; @AutoColor(R.attr.colorForegroundSecondary) - @ColorInt public int colorForegroundSecondary; + @ColorInt + public int colorForegroundSecondary; @AutoColor(R.attr.colorForegroundAction) - @ColorInt public int colorForegroundAction; + @ColorInt + public int colorForegroundAction; @AutoColor(R.attr.colorBackground) - @ColorInt public int colorBackground; + @ColorInt + public int colorBackground; @AutoColor(R.attr.colorBackgroundHighlight) - @ColorInt public int colorBackgroundHighlight; + @ColorInt + public int colorBackgroundHighlight; @AutoColor(R.attr.colorBackgroundSecondary) - @ColorInt public int colorBackgroundSecondary; + @ColorInt + public int colorBackgroundSecondary; @AutoColor(R.attr.colorBackgroundCard) - @ColorInt public int colorBackgroundCard; + @ColorInt + public int colorBackgroundCard; @AutoColor(R.attr.colorTintActivity) - @ColorInt public int colorTintActivity; + @ColorInt + public int colorTintActivity; @AutoColor(R.attr.colorTintMessage) - @ColorInt public int colorTintMessage; + @ColorInt + public int colorTintMessage; @AutoColor(R.attr.colorTintHighlight) - @ColorInt public int colorTintHighlight; + @ColorInt + public int colorTintHighlight; } } diff --git a/QuasselDroidNG/src/main/java/de/kuschku/util/ui/parcelableUtil/QVariantParcelable.java b/QuasselDroidNG/src/main/java/de/kuschku/util/ui/parcelableUtil/QVariantParcelable.java index 8e075d4bf61d3ebdd6fa390aa70992b0dc32f1fe..9730c0c3964fe2ee39ebb4c3900776e529a10749 100644 --- a/QuasselDroidNG/src/main/java/de/kuschku/util/ui/parcelableUtil/QVariantParcelable.java +++ b/QuasselDroidNG/src/main/java/de/kuschku/util/ui/parcelableUtil/QVariantParcelable.java @@ -10,7 +10,7 @@ import de.kuschku.libquassel.primitives.QMetaType; import de.kuschku.libquassel.primitives.QMetaTypeRegistry; import de.kuschku.libquassel.primitives.types.QVariant; -import static de.kuschku.util.AndroidAssert.*; +import static de.kuschku.util.AndroidAssert.assertNotNull; @SuppressWarnings("unchecked") public class QVariantParcelable<T> extends QVariant<T> implements Parcelable { @@ -34,7 +34,7 @@ public class QVariantParcelable<T> extends QVariant<T> implements Parcelable { data = (source.readInt() > 0); break; default: - throw new IllegalArgumentException("Can’t deserialize type "+type.name); + throw new IllegalArgumentException("Can’t deserialize type " + type.name); } return new QVariantParcelable<>(type.name, data); } catch (IOException e) { @@ -80,7 +80,7 @@ public class QVariantParcelable<T> extends QVariant<T> implements Parcelable { dest.writeInt(((Boolean) data) ? 1 : 0); break; default: - throw new IllegalArgumentException("Can’t serialize type "+type.name); + throw new IllegalArgumentException("Can’t serialize type " + type.name); } } } diff --git a/QuasselDroidNG/src/main/java/de/kuschku/util/ui/parcelableUtil/StorageBackendParcelable.java b/QuasselDroidNG/src/main/java/de/kuschku/util/ui/parcelableUtil/StorageBackendParcelable.java index b2a064e55e4e60ec2439193d68df8f84b77cb4ca..0132e130f251d3d7540b834da535c43dffd416e1 100644 --- a/QuasselDroidNG/src/main/java/de/kuschku/util/ui/parcelableUtil/StorageBackendParcelable.java +++ b/QuasselDroidNG/src/main/java/de/kuschku/util/ui/parcelableUtil/StorageBackendParcelable.java @@ -15,7 +15,7 @@ import de.kuschku.libquassel.primitives.QMetaType; import de.kuschku.libquassel.primitives.types.QVariant; import de.kuschku.util.backports.Stream; -import static de.kuschku.util.AndroidAssert.*; +import static de.kuschku.util.AndroidAssert.assertNotNull; public class StorageBackendParcelable extends StorageBackend implements Parcelable { @NonNull @@ -44,7 +44,7 @@ public class StorageBackendParcelable extends StorageBackend implements Parcelab SetupDefaults.put(key, new QVariant<>(type, source.readInt() > 0)); break; default: - throw new IllegalArgumentException("Can’t serialize type "+ type.name()); + throw new IllegalArgumentException("Can’t serialize type " + type.name()); } } catch (IOException e) { } @@ -71,6 +71,11 @@ public class StorageBackendParcelable extends StorageBackend implements Parcelab super(displayName, setupDefaults, description, setupKeys); } + @NonNull + public static ArrayList<StorageBackendParcelable> wrap(@NonNull List<StorageBackend> backends) { + return new ArrayList<>(new Stream<>(backends).map(StorageBackendParcelable::new).list()); + } + @Override public int describeContents() { return 0; @@ -98,13 +103,8 @@ public class StorageBackendParcelable extends StorageBackend implements Parcelab dest.writeInt(((Boolean) q.data) ? 1 : 0); break; default: - throw new IllegalArgumentException("Can’t serialize type "+q.type.name); + throw new IllegalArgumentException("Can’t serialize type " + q.type.name); } } } - - @NonNull - public static ArrayList<StorageBackendParcelable> wrap(@NonNull List<StorageBackend> backends) { - return new ArrayList<>(new Stream<>(backends).map(StorageBackendParcelable::new).list()); - } } diff --git a/QuasselDroidNG/src/main/res/drawable-hdpi/.directory b/QuasselDroidNG/src/main/res/drawable-hdpi/.directory deleted file mode 100644 index ad8d34c7b0c5039386804752814c63c4217efd6d..0000000000000000000000000000000000000000 --- a/QuasselDroidNG/src/main/res/drawable-hdpi/.directory +++ /dev/null @@ -1,7 +0,0 @@ -[Dolphin] -PreviewsShown=true -SortOrder=1 -Timestamp=2016,1,9,4,54,18 -Version=3 -ViewMode=1 -VisibleRoles=Details_text,Details_size,Details_date,Details_type,CustomizedDetails diff --git a/QuasselDroidNG/src/main/res/drawable-mdpi/.directory b/QuasselDroidNG/src/main/res/drawable-mdpi/.directory deleted file mode 100644 index 4d8329a6e3f5513db95616adab31ac7fdf88d67a..0000000000000000000000000000000000000000 --- a/QuasselDroidNG/src/main/res/drawable-mdpi/.directory +++ /dev/null @@ -1,6 +0,0 @@ -[Dolphin] -PreviewsShown=true -Timestamp=2016,1,9,4,54,22 -Version=3 -ViewMode=1 -VisibleRoles=Details_text,Details_size,Details_date,Details_type,CustomizedDetails diff --git a/QuasselDroidNG/src/main/res/drawable/above_shadow.xml b/QuasselDroidNG/src/main/res/drawable/above_shadow.xml deleted file mode 100644 index 5965c971e3c17d05d8e8f2ab0be766ccde3cc5de..0000000000000000000000000000000000000000 --- a/QuasselDroidNG/src/main/res/drawable/above_shadow.xml +++ /dev/null @@ -1,8 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<shape xmlns:android="http://schemas.android.com/apk/res/android"> - <gradient - android:startColor="#20000000" - android:endColor="@android:color/transparent" - android:angle="90" > - </gradient> -</shape> \ No newline at end of file diff --git a/QuasselDroidNG/src/main/res/drawable/popup_background_material.xml b/QuasselDroidNG/src/main/res/drawable/popup_background_material.xml index 7e5b00305c1b06bb864bcc241d01f55315f4275f..d8de1f5bd2feffe44cba69753511a26be5cd40d2 100644 --- a/QuasselDroidNG/src/main/res/drawable/popup_background_material.xml +++ b/QuasselDroidNG/src/main/res/drawable/popup_background_material.xml @@ -1,5 +1,4 @@ -<?xml version="1.0" encoding="utf-8"?> -<!-- Copyright (C) 2014 The Android Open Source Project +<?xml version="1.0" encoding="utf-8"?><!-- Copyright (C) 2014 The Android Open Source Project Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -17,9 +16,7 @@ <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle"> - <corners - android:radius="2dp" /> - <solid - android:color="?attr/colorBackground" /> + <corners android:radius="2dp" /> + <solid android:color="?attr/colorBackground" /> </shape> diff --git a/QuasselDroidNG/src/main/res/layout/activity_main.xml b/QuasselDroidNG/src/main/res/layout/activity_main.xml index b3e6a9896cd94505e243f42c3850c72c95cb4f67..caa8472e07b27e5e99c19bf1e42295ddc6515b8a 100644 --- a/QuasselDroidNG/src/main/res/layout/activity_main.xml +++ b/QuasselDroidNG/src/main/res/layout/activity_main.xml @@ -1,6 +1,5 @@ <?xml version="1.0" encoding="utf-8"?> -<android.support.v4.widget.DrawerLayout - xmlns:android="http://schemas.android.com/apk/res/android" +<android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/drawer_left" @@ -35,4 +34,4 @@ <include layout="@layout/drawer" /> -</android.support.v4.widget.DrawerLayout> \ No newline at end of file +</android.support.v4.widget.DrawerLayout> diff --git a/QuasselDroidNG/src/main/res/layout/content_main.xml b/QuasselDroidNG/src/main/res/layout/content_main.xml index 8c1a3509d40dd6756c4c18d36841a347efb16634..cf4ffcdbe0e1a46b27234e67c1875f0e9c33f297 100644 --- a/QuasselDroidNG/src/main/res/layout/content_main.xml +++ b/QuasselDroidNG/src/main/res/layout/content_main.xml @@ -1,6 +1,5 @@ <?xml version="1.0" encoding="utf-8"?> -<android.support.v4.widget.SwipeRefreshLayout - xmlns:android="http://schemas.android.com/apk/res/android" +<android.support.v4.widget.SwipeRefreshLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/swipe_view" android:layout_width="match_parent" android:layout_height="0dip" @@ -9,7 +8,7 @@ <android.support.v7.widget.RecyclerView android:id="@+id/messages" - android:clickable="true" android:layout_width="match_parent" - android:layout_height="match_parent" /> -</android.support.v4.widget.SwipeRefreshLayout> \ No newline at end of file + android:layout_height="match_parent" + android:clickable="true" /> +</android.support.v4.widget.SwipeRefreshLayout> diff --git a/QuasselDroidNG/src/main/res/layout/core_dialog.xml b/QuasselDroidNG/src/main/res/layout/core_dialog.xml index 36cdf9966188e828a8acf070a6f5f39140283d33..a8c5541f09fcc02f42c29dacde8902cf5f05b6f6 100644 --- a/QuasselDroidNG/src/main/res/layout/core_dialog.xml +++ b/QuasselDroidNG/src/main/res/layout/core_dialog.xml @@ -1,18 +1,19 @@ <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" - android:orientation="vertical" android:layout_width="match_parent" - android:layout_height="match_parent"> + android:layout_width="match_parent" + android:layout_height="match_parent" + android:orientation="vertical"> <EditText + android:id="@+id/server" android:layout_width="match_parent" android:layout_height="wrap_content" - android:id="@+id/server" android:inputType="textUri" /> <EditText + android:id="@+id/port" android:layout_width="match_parent" android:layout_height="wrap_content" - android:id="@+id/port" android:inputType="number" /> -</LinearLayout> \ No newline at end of file +</LinearLayout> diff --git a/QuasselDroidNG/src/main/res/layout/drawer.xml b/QuasselDroidNG/src/main/res/layout/drawer.xml index 7de9503032f23547af1fad3eef05bf9cb9fe5d31..9361ba5afda7af84caf16bb82a583f265a1cb006 100644 --- a/QuasselDroidNG/src/main/res/layout/drawer.xml +++ b/QuasselDroidNG/src/main/res/layout/drawer.xml @@ -1,6 +1,5 @@ <?xml version="1.0" encoding="utf-8"?> -<android.support.design.widget.NavigationView - xmlns:android="http://schemas.android.com/apk/res/android" +<android.support.design.widget.NavigationView xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/navigation_left" android:layout_width="wrap_content" android:layout_height="match_parent" @@ -20,8 +19,8 @@ <android.support.v7.widget.AppCompatImageView android:layout_width="match_parent" android:layout_height="match_parent" - android:src="@drawable/bg" - android:scaleType="centerCrop" /> + android:scaleType="centerCrop" + android:src="@drawable/bg" /> <android.support.v7.widget.Toolbar android:id="@+id/buffer_view_toolbar" diff --git a/QuasselDroidNG/src/main/res/layout/login_dialog.xml b/QuasselDroidNG/src/main/res/layout/login_dialog.xml index 8d9ada1fc7cb534e7fa68b622c07d58797d10e45..b30ba636d922f7146c3777f6ea5701f2616634f3 100644 --- a/QuasselDroidNG/src/main/res/layout/login_dialog.xml +++ b/QuasselDroidNG/src/main/res/layout/login_dialog.xml @@ -1,18 +1,19 @@ <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" - android:orientation="vertical" android:layout_width="match_parent" - android:layout_height="match_parent"> + android:layout_width="match_parent" + android:layout_height="match_parent" + android:orientation="vertical"> <EditText + android:id="@+id/username" android:layout_width="match_parent" android:layout_height="wrap_content" - android:id="@+id/username" android:inputType="text" /> <EditText + android:id="@+id/password" android:layout_width="match_parent" android:layout_height="wrap_content" - android:id="@+id/password" android:inputType="textPassword" /> </LinearLayout> diff --git a/QuasselDroidNG/src/main/res/layout/slider_main.xml b/QuasselDroidNG/src/main/res/layout/slider_main.xml index 0ec5e61c93f084a7873d170f64c4f46ffe02e519..bc50b355b83c97bda299a5733a7b2796160cf58c 100644 --- a/QuasselDroidNG/src/main/res/layout/slider_main.xml +++ b/QuasselDroidNG/src/main/res/layout/slider_main.xml @@ -1,9 +1,8 @@ <?xml version="1.0" encoding="utf-8"?> -<LinearLayout +<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" - android:orientation="vertical" - xmlns:android="http://schemas.android.com/apk/res/android"> + android:orientation="vertical"> <LinearLayout android:layout_width="match_parent" @@ -27,18 +26,19 @@ <android.support.v7.widget.AppCompatImageButton android:id="@+id/send" style="?attr/buttonStyleSmall" - android:background="?attr/selectableItemBackgroundBorderless" android:layout_width="56dp" android:layout_height="match_parent" android:layout_gravity="center_vertical" + android:background="?attr/selectableItemBackgroundBorderless" android:padding="12dp" android:src="@drawable/ic_send" android:tint="?attr/colorAccent" /> </LinearLayout> + <android.support.v7.widget.RecyclerView android:id="@+id/msg_history" - android:background="?attr/chatlineBackground" android:layout_width="match_parent" android:layout_height="0dip" - android:layout_weight="1" /> + android:layout_weight="1" + android:background="?attr/chatlineBackground" /> </LinearLayout> diff --git a/QuasselDroidNG/src/main/res/layout/toolbar.xml b/QuasselDroidNG/src/main/res/layout/toolbar.xml index bb095bc455ca05792d5f93f64b76eaf90f6f6c0a..67aacd354afb87fcf7ce305303d249f6c1066cc4 100644 --- a/QuasselDroidNG/src/main/res/layout/toolbar.xml +++ b/QuasselDroidNG/src/main/res/layout/toolbar.xml @@ -1,14 +1,14 @@ <?xml version="1.0" encoding="utf-8"?> -<android.support.design.widget.AppBarLayout +<android.support.design.widget.AppBarLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" - xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="wrap_content" android:theme="@style/AppTheme.AppBarOverlay"> + <android.support.v7.widget.Toolbar android:id="@+id/toolbar" android:layout_width="match_parent" android:layout_height="?attr/actionBarSize" android:background="?attr/colorPrimary" app:popupTheme="@style/AppTheme.PopupOverlay" /> -</android.support.design.widget.AppBarLayout> \ No newline at end of file +</android.support.design.widget.AppBarLayout> diff --git a/QuasselDroidNG/src/main/res/layout/widget_chatmessage.xml b/QuasselDroidNG/src/main/res/layout/widget_chatmessage.xml index f58de9f1e73b40374ca6883733b4923fd834299c..f114000c7c4b669f378d0ea028fab93b48747754 100644 --- a/QuasselDroidNG/src/main/res/layout/widget_chatmessage.xml +++ b/QuasselDroidNG/src/main/res/layout/widget_chatmessage.xml @@ -1,31 +1,32 @@ <?xml version="1.0" encoding="utf-8"?> -<LinearLayout - xmlns:android="http://schemas.android.com/apk/res/android" - android:orientation="horizontal" +<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" - android:textAppearance="?android:attr/textAppearanceListItemSmall" - android:gravity="top" android:clickable="true" - android:paddingStart="@dimen/message_horizontal" - android:paddingLeft="@dimen/message_horizontal" + android:gravity="top" + android:orientation="horizontal" + android:paddingBottom="@dimen/message_vertical" android:paddingEnd="@dimen/message_horizontal" + android:paddingLeft="@dimen/message_horizontal" android:paddingRight="@dimen/message_horizontal" + android:paddingStart="@dimen/message_horizontal" android:paddingTop="@dimen/message_vertical" - android:paddingBottom="@dimen/message_vertical" > + android:textAppearance="?android:attr/textAppearanceListItemSmall"> + <TextView android:id="@+id/time" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:typeface="monospace" - android:text="10:08" android:layout_marginEnd="@dimen/message_horizontal" - android:layout_marginRight="@dimen/message_horizontal" /> + android:layout_marginRight="@dimen/message_horizontal" + android:text="10:08" + android:typeface="monospace" /> + <TextView android:id="@+id/content" - android:clickable="true" - android:text="NK33 well, the issue is I need the main engines to tilt 90 degrees for vertical takeoff and landing" android:layout_width="0dip" android:layout_height="wrap_content" - android:layout_weight="1" /> -</LinearLayout> \ No newline at end of file + android:layout_weight="1" + android:clickable="true" + android:text="NK33 well, the issue is I need the main engines to tilt 90 degrees for vertical takeoff and landing" /> +</LinearLayout> diff --git a/QuasselDroidNG/src/main/res/menu/global.xml b/QuasselDroidNG/src/main/res/menu/global.xml index 32b6a8f1a788f62d2def9caae3f2eea863e67d9f..80dac4c968320037a5e441680fbcc57746eb37b2 100644 --- a/QuasselDroidNG/src/main/res/menu/global.xml +++ b/QuasselDroidNG/src/main/res/menu/global.xml @@ -3,6 +3,6 @@ <item android:id="@+id/action_settings" android:orderInCategory="100" - app:showAsAction="never" - android:title="@string/action_settings" /> + android:title="@string/action_settings" + app:showAsAction="never" /> </menu> diff --git a/QuasselDroidNG/src/main/res/values/attrs.xml b/QuasselDroidNG/src/main/res/values/attrs.xml index 7d42d8175985d5cc388a31e327acafca96b9111e..7ae52ee34b11f17e80d3f5a0e5ff982c11edd8ef 100644 --- a/QuasselDroidNG/src/main/res/values/attrs.xml +++ b/QuasselDroidNG/src/main/res/values/attrs.xml @@ -2,7 +2,7 @@ <resources> <attr name="messagesBackground" format="reference" /> <attr name="chatlineBackground" format="reference" /> - <attr name="dividerColor" format="reference"/> + <attr name="dividerColor" format="reference" /> <!-- sender colors --> @@ -59,4 +59,4 @@ <attr name="colorTintActivity" format="color" /> <attr name="colorTintMessage" format="color" /> <attr name="colorTintHighlight" format="color" /> -</resources> \ No newline at end of file +</resources> diff --git a/QuasselDroidNG/src/main/res/values/themes.xml b/QuasselDroidNG/src/main/res/values/themes.xml index 25a7fa2da910a3d25ae0a0a8e0bc95a8b7a75937..81bf17eb774910159705009125e9fd760891be9d 100644 --- a/QuasselDroidNG/src/main/res/values/themes.xml +++ b/QuasselDroidNG/src/main/res/values/themes.xml @@ -1,5 +1,6 @@ <?xml version="1.0" encoding="utf-8"?> <resources> + <style name="Material_Dark" parent="AppTheme"> <item name="senderColor0">@color/md_pink_500</item> <item name="senderColor1">@color/md_purple_500</item> @@ -98,4 +99,4 @@ <item name="colorTintMessage">#2277dd</item> <item name="colorTintHighlight">#ff8811</item> </style> -</resources> \ No newline at end of file +</resources>