Skip to content

Instantly share code, notes, and snippets.

View Kurukshetran's full-sized avatar
🎯
Focusing

Kurukshetran Kurukshetran

🎯
Focusing
View GitHub Profile
@Kurukshetran
Kurukshetran / Gzip.java
Created April 17, 2018 10:46
Java gzip compress/decompress string
import java.io.BufferedReader;
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.zip.GZIPInputStream;
import java.util.zip.GZIPOutputStream;
public class Gzip {
@Kurukshetran
Kurukshetran / GatewayApplication.java
Created April 13, 2018 13:05 — forked from WeirdBob/GatewayApplication.java
Spring cloud gateway response body modification
package examples;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
@EnableAutoConfiguration
public class GatewayApplication {
@Kurukshetran
Kurukshetran / CHANGELOG.md
Created April 2, 2018 06:43 — forked from ungoldman/CHANGELOG.md
change log template

${project-name} Change Log

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog and this project adheres to Semantic Versioning.

1.0.0

  • engage
@Kurukshetran
Kurukshetran / input.xml
Created February 23, 2018 07:32 — forked from serge1/input.xml
XSLT Transform by simple Java code
import javax.xml.transform.*;
import javax.xml.transform.stream.StreamResult;
import javax.xml.transform.stream.StreamSource;
import java.io.File;
import java.io.IOException;
import java.net.URISyntaxException;
public class XsltTransform {
public static void main(String[] args) throws IOException,
URISyntaxException,
@Kurukshetran
Kurukshetran / Iso9797Alg3MacTest.java
Created February 17, 2018 13:05 — forked from Gilmor/Iso9797Alg3MacTest.java
Iso9797Alg3 - Retail MAC Calculation in Java
package cz.monetplus.mac;
import static org.assertj.core.api.Assertions.assertThat;
import org.apache.commons.codec.binary.Hex;
import org.bouncycastle.crypto.BlockCipher;
import org.bouncycastle.crypto.Mac;
import org.bouncycastle.crypto.engines.DESEngine;
import org.bouncycastle.crypto.macs.ISO9797Alg3Mac;
import org.bouncycastle.crypto.params.KeyParameter;
@Kurukshetran
Kurukshetran / gist:025337da514e6bf2ab09022a32990559
Created January 30, 2018 14:06 — forked from yterradas/gist:0fe2ab41081e9a676f3e
Custom filter added to spring security filter chain.
@Configuration
@EnableWebMvcSecurity
public class WebSecurityConfig
extends WebSecurityConfigurerAdapter {
@Value("${oauth.check_token.url:http://localhost:3030/oauth/token/info}")
private String checkTokenUrl;
@Autowired @Qualifier("restTemplate")
private RestOperations authRestTemplate;
@Kurukshetran
Kurukshetran / gist:9547314f37401629116d185bcfe4b246
Created January 30, 2018 14:06 — forked from yterradas/gist:7e95378640eeb597ce33
Override AnonymousAuthenticationFilter with a custom implementation.
@Configuration
@EnableWebMvcSecurity
public class WebSecurityConfig
extends WebSecurityConfigurerAdapter {
@Value("${oauth.check_token.url:http://localhost:3030/oauth/token/info}")
private String checkTokenUrl;
@Autowired @Qualifier("restTemplate")
private RestOperations authRestTemplate;
http.addFilterBefore(customAuthFilter(), SecurityContextPersistenceFilter.class)
.authorizeRequests()
.antMatchers("/**")
.authenticated()
.and()
.exceptionHandling().disable()
.sessionManagement().disable()
.rememberMe().disable()
.x509().disable()
.headers().disable()
@Kurukshetran
Kurukshetran / gist:1b918fa37445025712d15e56890edef1
Created November 5, 2017 17:23
J2EE - Example javax.servlet.Filter ServletResponse content modifying or use, e.g. to calculate MD5 and add to HTTP headers.
// MyFilter.java
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
OutputStream out = response.getOutputStream();
ResponseWrapper wrapper = new ResponseWrapper((HttpServletResponse)response);
chain.doFilter(request, wrapper);
byte responseContent[] = wrapper.getData();
// Write copied response, should change whatever you want in 'responseContent' before sending to client
out.write(responseContent);
How to Create Your YouTube API Credentials
https://vidible.zendesk.com/hc/en-us/articles/207036056-How-to-Create-Your-YouTube-API-Credentials
Creating your YouTube API Credentials is accomplished by performing to main stages:
Stage I - Creating a Google OAuth 2.0 Web application client.
Stage II - Creating a YouTube refresh token.