Skip to content

Instantly share code, notes, and snippets.

@imwower
imwower / Bootstrapper
Created July 30, 2014 02:53
Autofac Bootstrapper
public class Bootstrapper
{
public Bootstrapper()
{ }
private ContainerBuilder builder;
private IContainer container;
public IContainer Container
{
@imwower
imwower / ErrorHandlerModule
Created July 30, 2014 03:06
ASP MVC Error Handler Module
public class ErrorHandlerModule : Autofac.Module
{
protected override void Load(ContainerBuilder builder)
{
base.Load(builder);
builder.RegisterType<MvcErrorAttribute>()
.As<HandleErrorAttribute>()
.PropertiesAutowiredWithParameters();
public class MvcErrorAttribute : HandleErrorAttribute
{
public ILogger Logger { get; set; }
public ErrorController ErrorController { get; set; }
public MvcErrorAttribute()
{ }
public override void OnException(ExceptionContext filterContext)
{
public class ErrorController : Controller
{
public ILogger Logger { get; set; }
public ActionResult Error(int code = 404, string redirectedUrl = "")
{
ViewBag.StateCode = code;
if (code == 401)
if (!string.IsNullOrEmpty(redirectedUrl))
return Redirect(redirectedUrl);
@imwower
imwower / StateHelper
Created September 25, 2014 08:08
visual state manager helper
{
/// <summary>
/// Copied from http://stackoverflow.com/questions/6002046/binding-visualstatemanager-view-state-to-a-mvvm-viewmodel
/// </summary>
public class StateHelper : DependencyObject
{
public static readonly DependencyProperty StateProperty = DependencyProperty.RegisterAttached(
"State", typeof(String), typeof(StateHelper), new PropertyMetadata("Normal", StateChanged));
@imwower
imwower / HttpClient.java
Last active January 3, 2017 02:57
java使用apache http client发送get和post请求;支持文件上传和ssl
package com;
import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.NameValuePair;
import org.apache.http.client.entity.UrlEncodedFormEntity;
import org.apache.http.client.methods.CloseableHttpResponse;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.conn.ssl.SSLConnectionSocketFactory;
@imwower
imwower / ngrokd.sh
Created February 16, 2017 07:20
auto start ngrokd script on centos, put this script to /etc/init.d/ngrokd
#!/usr/bin/env bash
# These setting need you to set.
LOCATION=/usr/local/src/ngrok/bin
TLSKEY=/usr/local/src/ngrok/bin/device.key
TLSCRT=/usr/local/src/ngrok/bin/device.crt
DOMAIN=ngrok.domain.com
PORT=8000
HTTPSPORT=4443
LOGFILE=/usr/local/src/ngrok/bin/logs/ngrokd.log
PIDFILE=/usr/local/src/ngrok/bin/run/ngrokd.pid
@imwower
imwower / ClassFinder.java
Created March 10, 2017 10:39
java class finder with jar package
public class ClassFinder {
private static final char PKG_SEPARATOR = '.';
private static final char DIR_SEPARATOR = '/';
private static final String CLASS_FILE_SUFFIX = ".class";
private static final String BAD_PACKAGE_ERROR = "Unable to get resources from path '%s'. Are you sure the package '%s' exists?";
private static Logger logger = Logger.getLogger(ClassFinder.class);
/**
* scannedPackage: com.foo.bar
*
@imwower
imwower / README.md
Created September 11, 2018 10:15 — forked from superseb/README.md
Generate self signed certificates for Rancher 2.0

Generate self signed certificates for Rancher 2.0

Generate certificates

docker run -v $PWD/certs:/certs \
  -e SSL_SUBJECT=test.example.com \
  -e SSL_DNS=test.example.com,test2.example.com \
  -e SSL_IP=10.0.0.1 \
  -e K8S_SAVE_CA_CRT=true \
@imwower
imwower / jenkins.yaml
Created September 13, 2018 07:41
jenkins.yaml
apiVersion: apps/v1beta2
kind: Deployment
metadata:
annotations:
deployment.kubernetes.io/revision: "6"
field.cattle.io/creatorId: user-2xdrm
field.cattle.io/publicEndpoints: '[{"nodeName":"c-zd4f7:m-948a94211766","addresses":["10.40.20.216"],"port":8080,"protocol":"TCP","podName":"base:jenkins-84d69d7-fvfk2","allNodes":false}]'
creationTimestamp: null
generation: 1
labels: