Skip to content

Instantly share code, notes, and snippets.

View jangalinski's full-sized avatar

Jan Galinski jangalinski

View GitHub Profile
public MyBean {
@Inject
@Named("myValue")
private String value;
@Produces
@Named("myValue")
private static String initValue() {
return new PropertyReader("file").getValue("parameter");
package sof14839561;
import static com.google.inject.Guice.createInjector;
import static com.google.inject.name.Names.named;
import static org.hamcrest.CoreMatchers.is;
import static org.junit.Assert.assertThat;
import javax.inject.Inject;
import javax.inject.Named;
@jangalinski
jangalinski / Coin.java
Created March 21, 2013 12:50
cannot decide what to do? Just Coin.flip() to get random 50/50 decisions.
import java.util.Random;
public class Coin {
private static final Random random = new Random();
@Deprecated
private Coin() {
// never instantiate
}
public class FactoryThatThrowsException {
// a String creation Factory/Builder ...
public static String getString() throws Exception {
throw new Exception();
}
// normally would not compile
private final String aString = getString();
@jangalinski
jangalinski / ActivitiTestWatchman.java
Created April 10, 2013 21:05
suggestion on how to extend/fix the current ProcessEngineRule
/**
* Rewrite of the ActivitiRule since TestWatchman is deprecated for junit>4.9.
*
* @author Jan Galinski, Holisticon AG (jan.galinski@holisticon.de)
*/
public class ActivitiTestWatcher extends TestWatcher implements ProcessEngineRule {
/**
* Default configuration file name when not used with needle.
*/
@jangalinski
jangalinski / BeanValidationRule.java
Created April 11, 2013 09:14
Useful little junit-4.11 classrule that allows to assertValid() directly without looking into the validation result set every time, but still can be used as a full blown JSR303 validator if needed.
import static org.hamcrest.CoreMatchers.is;
import static org.hamcrest.CoreMatchers.not;
import static org.hamcrest.collection.IsEmptyCollection.empty;
import static org.junit.Assert.assertThat;
import java.util.Set;
import javax.validation.ConstraintViolation;
import javax.validation.Validation;
import javax.validation.Validator;
import java.io.Serializable;
import java.lang.annotation.Annotation;
import java.util.Set;
import javax.enterprise.context.ApplicationScoped;
import javax.enterprise.context.spi.CreationalContext;
import javax.enterprise.inject.Any;
import javax.enterprise.inject.Default;
import javax.enterprise.inject.spi.Bean;
import static org.junit.Assert.*;
import static org.mockito.Mockito.mock;
import org.camunda.bpm.engine.ManagementService;
import org.camunda.bpm.engine.ProcessEngine;
import org.camunda.bpm.engine.impl.ProcessEngineImpl;
import org.camunda.bpm.engine.impl.context.Context;
import org.camunda.bpm.engine.impl.interceptor.Command;
import org.camunda.bpm.engine.impl.interceptor.CommandContext;
import org.camunda.bpm.engine.impl.interceptor.CommandExecutor;
package io.github.jangalinski.stream;
import java.util.EnumSet;
import java.util.Optional;
import java.util.Set;
import java.util.concurrent.atomic.AtomicReference;
import java.util.function.BiConsumer;
import java.util.function.BiPredicate;
import java.util.function.BinaryOperator;
@jangalinski
jangalinski / BpaClientModelMapperConfigurationIT.java
Created July 14, 2016 09:11
getting all application context classes
public static List<Object> getInstantiatedSigletons(ApplicationContext ctx) {
List<Object> singletons = new ArrayList<Object>();
String[] all = ctx.getBeanDefinitionNames();
ConfigurableListableBeanFactory clbf = ((AbstractApplicationContext) ctx).getBeanFactory();
for (String name : all) {
Object s = clbf.getSingleton(name);
if (s != null)
singletons.add(s);