Skip to content

Instantly share code, notes, and snippets.

@vaibhav-jani
vaibhav-jani / ScalableThreadPoolExecutor.java
Created August 15, 2018 11:16 — forked from mnadeem/ScalableThreadPoolExecutor.java
Salable thread pool executor (TPE) which first creates threads up to maximum pool size then queue up the work (Queue depends upon Executor)
import java.util.Collection;
import java.util.Iterator;
import java.util.concurrent.LinkedTransferQueue;
import java.util.concurrent.ThreadPoolExecutor;
import java.util.concurrent.TimeUnit;
import java.util.concurrent.TransferQueue;
import java.util.concurrent.locks.ReentrantLock;
public final class ScalableThreadPoolExecutor extends ThreadPoolExecutor {
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.ColorFilter;
import android.graphics.Paint;
import android.graphics.Rect;
import android.graphics.RectF;
import android.graphics.drawable.Drawable;
import android.util.DisplayMetrics;
/**
@vaibhav-jani
vaibhav-jani / Logger.java
Created July 4, 2016 08:01 — forked from anonymous/Logger.java
Android Log wrapper
import android.content.Context;
import android.util.Log;
public class Logger {
private static final boolean shouldLog = true;
public static void i(String tag, String msg) {
package com.firebase.utils;
import java.util.Date;
/**
* Fancy ID generator that creates 20-character string identifiers with the
* following properties:
*
* 1. They're based on timestamp so that they sort *after* any existing ids.
* 2. They contain 72-bits of random data after the timestamp so that IDs won't
@vaibhav-jani
vaibhav-jani / GreetingClient.java
Created April 19, 2016 06:24 — forked from anonymous/GreetingClient.java
Socket sample Java
// File Name GreetingClient.java
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.Socket;
import java.util.Scanner;
public Bitmap getScreenshotFromRecyclerView(RecyclerView view) {
RecyclerView.Adapter adapter = view.getAdapter();
Bitmap bigBitmap = null;
if (adapter != null) {
int size = adapter.getItemCount();
int height = 0;
Paint paint = new Paint();
int iHeight = 0;
final int maxMemory = (int) (Runtime.getRuntime().maxMemory() / 1024);
@vaibhav-jani
vaibhav-jani / RestrictedMapView.java
Last active November 3, 2015 11:11 — forked from joshdholtz/SomeFragment.java
Android Google Maps V2 - MapView in XML
package com.example.vaibhavjani.geojsonexample;
import android.content.Context;
import android.graphics.Point;
import android.os.Handler;
import android.util.AttributeSet;
import android.view.GestureDetector;
import android.view.MotionEvent;
import android.view.ScaleGestureDetector;