Skip to content

Instantly share code, notes, and snippets.

View rozaydin's full-sized avatar
🎯
Focusing

Rıdvan Özaydın rozaydin

🎯
Focusing
View GitHub Profile
@rozaydin
rozaydin / Main.java
Last active February 15, 2017 13:28
Java Interrupts - Who or What clears interrupted flag and How ?
/**
* Created by rozaydin on 2/15/17.
*/
public class Main {
public static void main(String[] args) {
try {
t1 t1 = new t1();
@rozaydin
rozaydin / GetTimeoutScenario2.java
Created March 14, 2017 13:47
Future<T> get() with timeout scenario - Task does not complete within defined timeout duration - TimeoutException occurs
package org.tutorial.future;
import org.tutorial.future.task.FibonacciTask;
import java.util.concurrent.*;
/**
* Created by rozaydin on 3/14/17.
*/
public class GetTimeoutScenario2 {
@rozaydin
rozaydin / GetTimeoutScenario.java
Created March 14, 2017 13:49
Future<T> get() with timeout scenario - Task does complete within defined timeout duration - No Exception occurs
package org.tutorial.future;
import org.tutorial.future.task.FibonacciTask;
import java.util.concurrent.*;
/**
* Created by rozaydin on 3/14/17.
*/
public class GetTimeoutScenario {
@rozaydin
rozaydin / GetScenario.java
Created March 14, 2017 13:50
Future<T> get() - Blocks till the task completes - No Exception occurs
package org.tutorial.future;
import org.tutorial.future.task.FibonacciTask;
import java.util.concurrent.ExecutionException;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import java.util.concurrent.Future;
/**
@rozaydin
rozaydin / CancelScenario1.java
Created March 14, 2017 13:52
Future<T> cancel(false|true) - Task does complete before cancel() is called - cancel() call returns false - No Exception occurs
package org.tutorial.future;
import org.tutorial.future.task.FibonacciTask;
import java.util.concurrent.ExecutionException;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import java.util.concurrent.Future;
/**
@rozaydin
rozaydin / CancelScenario2.java
Created March 14, 2017 13:54
Future<T> cancel(false) - Task starts execution - cancel(false) called - get() throws CancellationException - Worker Threads interrupt status remain false
package org.tutorial.future;
import org.tutorial.future.task.FibonacciTask;
import java.util.concurrent.ExecutionException;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import java.util.concurrent.Future;
/**
@rozaydin
rozaydin / CancelScenario3.java
Created March 14, 2017 13:55
Future<T> cancel(false) - Task starts execution - cancel(true) called - get() throws CancellationException - Worker Thread gets interrupted
package org.tutorial.future;
import org.tutorial.future.task.FibonacciTask;
import java.util.concurrent.ExecutionException;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import java.util.concurrent.Future;
/**
@rozaydin
rozaydin / CancelScenario4.java
Last active March 14, 2017 14:00
# Future<T> cancel(true) - Task starts execution - cancel(true) called - get() throws CancellationException - Worker Thread gets interrupted - Worker Thread although cancelled continues execution
package org.tutorial.future;
import org.tutorial.future.task.FibonacciTask;
import java.util.concurrent.ExecutionException;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import java.util.concurrent.Future;
/**
@rozaydin
rozaydin / arraysaslist.java
Created April 13, 2017 08:29
JUnit Tests that show fixed-size list is unmutable and add, remove, clear methods throw UnsupportedOperationException
package org.mshowto;
import org.junit.Before;
import org.junit.Test;
import java.util.Arrays;
import java.util.List;
import java.util.stream.IntStream;
public class arraysaslist {
@rozaydin
rozaydin / JWTUtilTest.java
Created November 5, 2017 13:17
Removed comments for clarity
@Test
public void JWTwithPaddingInBody() throws JoseException, org.jose4j.jwt.consumer.InvalidJwtException
{
String jwt_3 = "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJpc3MiOiIwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMSIsInN1YiI6IjAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxIiwiYXVkIjoiTWluZFNwaGVyZSBBUyIsImlhdCI6MTUwOTM1MjI5NywibmJmIjoxNTA5MzUyMjk3LCJleHAiOjE1MDk0Mzg2OTcsInNjaGVtYXMiOlsidXJuOnNpZW1lbnM6bWluZHNwaGVyZTp2MSJdLCJ0ZW4iOiJ0ZXN0LXRlbmFudCIsImp0aSI6IjkxODE3YTJkLTU0ZjQtNDQ1OC04YTI5LWU5MGU5ZDQ3YTViIn0=.G6U2GGJX0VCd6VW8-E4HnuvyRTNgct1oauornnOep_MMa8h-cDp8W6ca2LncYM2DaSpeVdO8haIuaAO3Z-vniDQqFa-__fZZvmDNex7D4YAFUqP5ZcW5wF9I3d73Y4uQ0uO07zBxbmZ4vCo6FtgtmwnyfY-BYV6Ag-ci0pw3ADD5uNEdrzL97Tcv500izRg09OuMIbppFkhVEwpWr1vl8Y-5_3gRfALLRBerc73Hcu-fcyXUJdOQTx-Qm3Ickr5bbNzcNsNUbhaNfI3Ij-dnM5IafdqsYbWKK7sbzhineOoldbn5Y0NqzdaHhUzKYjKhcB1sCDBG5E09z_HU00VNCjWCRFjAQTMvCHRUDKAoBOyhIufoKCLyh7zDfj5_OthX9DaCx_3Jg9hk2NcK-JjhN3QZTx2C38KB82YHFJNuUSd-K1I1WEBhfwebbhZPygKBv30OBUQ3V8DGmHDwyTUPMUFS-1CX5xEB4jSITQRyMeMsk3D