Skip to content

Instantly share code, notes, and snippets.

@BohdanLevchenko
BohdanLevchenko / kill-by-port.sh
Created August 1, 2020 12:34
kill-by-port.sh
#!/bin/bash
set -eu
declare -r PORT=$1
# kills process listening on specified port
if [ -z "$PORT" ]; then
echo Missing mandatory PORT attirbute!
exit 1
@BohdanLevchenko
BohdanLevchenko / GraphController.java
Created June 16, 2020 18:21 — forked from khill/GraphController.java
Example of a Spring MVC Controller which Displays a Graph from JFreeChart
package org.khill.dashboard.controller;
import java.util.Calendar;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Locale;
import java.util.Map;
import java.awt.Color;
package io.tomcat.sessionfreeze;
import org.apache.catalina.Manager;
import org.apache.catalina.Session;
import org.apache.catalina.connector.Request;
import org.apache.catalina.connector.Response;
import org.apache.catalina.valves.ValveBase;
import org.apache.juli.logging.Log;
import org.apache.juli.logging.LogFactory;
import org.springframework.boot.SpringApplication;
@BohdanLevchenko
BohdanLevchenko / proxy.java
Created September 14, 2019 15:13
proxy.java
package com.company;
import java.lang.reflect.InvocationHandler;
import java.lang.reflect.Method;
import java.lang.reflect.Proxy;
public class Main {
static class Worker implements IWorker {
public void doSomething() {

Keybase proof

I hereby claim:

  • I am bohdanlevchenko on github.
  • I am bohdanlevchenko (https://keybase.io/bohdanlevchenko) on keybase.
  • I have a public key whose fingerprint is CA90 53C8 762F 15BD 3DCE 55FF C58B CF1B FB15 8EA9

To claim this, I am signing this object:

@BohdanLevchenko
BohdanLevchenko / SafeJson.java
Created October 11, 2017 18:33
Json helper for nullable properties
import javax.json.*;
/**
* Usage:
* class SomeClass {
* //...
* public JsonValue toJson() {
* return Json.createObjectBuilder().add("id", this.someId)
* .add("zipCode", SafeJson.nvl(this.someNullableInt))
* .add("phone", SafeJson.nvl(this.someNullableString))
package com.stackoverflow.so46193254;
import org.springframework.boot.CommandLineRunner;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.annotation.Bean;
import org.springframework.data.jpa.domain.AbstractPersistable;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
_hashCode java/lang/Object.hashCode()I
_getClass java/lang/Object.getClass()Ljava/lang/Class;
_clone java/lang/Object.clone()Ljava/lang/Object;
_dabs java/lang/Math.abs(D)D
_dsin java/lang/Math.sin(D)D
_dcos java/lang/Math.cos(D)D
_dtan java/lang/Math.tan(D)D
_datan2 java/lang/Math.atan2(DD)D
_dsqrt java/lang/Math.sqrt(D)D
_dlog java/lang/Math.log(D)D
package com.stackoverflow.so44928052;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.CommandLineRunner;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.annotation.Bean;
package com.stackoverflow.so44836531;
import java.io.IOException;
import javax.servlet.*;
import javax.sql.DataSource;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;