This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/** private final DCLValue<Foo> foo = new DCLValue.create(); | |
* Foo result = foo.getOrCreate(syncOn, () -> new Foo()); | |
* Foo result = foo.get(); */ | |
interface DCLValue<T> { | |
T getOrCreate(Object syncOn, Supplier<T> creator); | |
T get(); | |
void set(T value); | |
static <T> DCLValue<T> create() { | |
return new DCLValueRegular<>(); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
static final Validator VALIDATOR = Validation.buildDefaultValidatorFactory().getValidator() | |
static void validatePojo(Object pojo) { | |
def errors = VALIDATOR.validate(pojo); | |
if (errors.size() > 0) { | |
log.error("Validation errors for {}: {}", pojo.getClass().getSimpleName(), errors); | |
throw new RuntimeException("Pojo validation failed - see logs - " + pojo.getClass().getName()); | |
} | |
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
@Target(ElementType.FIELD) | |
@Retention(RetentionPolicy.RUNTIME) | |
@interface TestPojo { | |
String file() | |
} | |
@TestPojo(file = "src/test/resources/foo-response.json") | |
FooResponse fooResponse | |
// invoke processSpecAnnotations() |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
this is a <font color="red">gist</font> | |
to embed [] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
[] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
await (async function() { | |
function getRandomInt(min, max) { | |
return Math.floor(Math.random() * (max - min + 1)) + min; | |
} | |
async function rewriteAllGames(compId, gameIds) { | |
console.log('gameIds:', gameIds); | |
var formData = new FormData(); | |
for (let i = 0; i < gameIds.length; i++) { | |
let gameId = gameIds[i]; | |
formData.append('items[]', 'game/' + gameId); |
OlderNewer