Skip to content

Instantly share code, notes, and snippets.

View graemerocher's full-sized avatar

Graeme Rocher graemerocher

View GitHub Profile
@graemerocher
graemerocher / App.java
Created May 31, 2021 18:47
Micronaut JBang Example
///usr/bin/env jbang "$0" "$@" ; exit $?
//DEPS io.micronaut:micronaut-bom:2.5.4@pom
//DEPS io.micronaut:micronaut-http-server-netty
//DEPS io.micronaut:micronaut-inject-java
//DEPS org.slf4j:slf4j-simple
package app;
import io.micronaut.http.annotation.*;
import io.micronaut.runtime.Micronaut;
@graemerocher
graemerocher / build.gradle
Last active June 18, 2020 14:00
micronaut gradle plugin before and after
plugins {
id "com.github.johnrengelman.shadow" version "6.0.0"
id "io.micronaut.application" version "1.0.0.M2"
}
version "0.1"
group "com.example"
repositories {
mavenCentral()
@graemerocher
graemerocher / pom.xml
Last active April 6, 2020 14:54
Most Basic Micronaut 2.0 POM
<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<groupId>io.micronaut</groupId>
<artifactId>micronaut-parent</artifactId>
<version>2.0.0.M2</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<groupId>example</groupId>
<artifactId>example</artifactId>
<version>0.1-SNAPSHOT</version>
@graemerocher
graemerocher / bom.gradle
Last active March 6, 2020 09:47
How to specify Micronaut BOM in all scopes for Gradle
dependencies {
annotationProcessor(platform("io.micronaut:micronaut-bom:$micronautVersion"))
testAnnotationProcessor(platform("io.micronaut:micronaut-bom:$micronautVersion"))
implementation(platform("io.micronaut:micronaut-bom:$micronautVersion"))
}
@graemerocher
graemerocher / oci-micronaut-cla.txt
Last active December 28, 2018 16:59
OCi Micronaut CLA
Micronaut Framework
Individual Contributor License Agreement
By signing below, you accept and agree to the following terms and conditions for Your present and future Contributions submitted to OCI in connection with the Micronaut project. In return, OCI shall not use Your Contributions in a way that is contrary to the public benefit or inconsistent with the Apache License v. 2.0. Except for the license granted herein to OCI and recipients of software distributed by OCI, You reserve all right, title, and interest in and to Your Contributions.
1. Definitions. "You" (or "Your") shall mean the copyright owner or legal entity authorized by the copyright owner that is making this Agreement with OCI. For legal entities, the entity making a Contribution and all other entities that control, are controlled by, or are under common control with that entity are considered to be a single Contributor. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or manageme
@graemerocher
graemerocher / build.gradle
Created March 16, 2017 13:48
GORM for MongoDB 6.1 RC1 with Grails 3.2.7
buildscript {
repositories {
mavenLocal()
maven { url "https://repo.grails.org/grails/core" }
}
dependencies {
classpath "org.grails:grails-gradle-plugin:$grailsVersion"
classpath "com.bertramlabs.plugins:asset-pipeline-gradle:2.11.6"
}
}
@graemerocher
graemerocher / TickTockController.groovy
Last active July 28, 2016 15:58
RxJava for Grails Async Comet Example
class TickTockController {
def index() {
Observable.create({ Subscriber subscriber ->
task {
for(i in (0..20)) {
if(i % 2 == 0) {
subscriber.onNext(
Rx.render("Tick")
)
@graemerocher
graemerocher / BookController.groovy
Last active July 29, 2016 13:25
BookController that uses RxJava and RxGORM for MongoDB
package rxgorm.demo
import grails.artefact.Controller
import grails.rx.web.Rx
import grails.validation.ValidationException
import groovy.transform.CompileStatic
import static org.springframework.http.HttpStatus.*
import static grails.rx.web.Rx.*
import static rx.Observable.*
@graemerocher
graemerocher / oci-grailsframework-cla.txt
Last active February 15, 2016 13:25
OCi Grails Framework CLA
Grails Framework
Individual Contributor License Agreement
By signing below, you accept and agree to the following terms and conditions for Your present and future Contributions submitted to OCI in connection with the Grails project. In return, OCI shall not use Your Contributions in a way that is contrary to the public benefit or inconsistent with the Apache License v. 2.0. Except for the license granted herein to OCI and recipients of software distributed by OCI, You reserve all right, title, and interest in and to Your Contributions.
1. Definitions. "You" (or "Your") shall mean the copyright owner or legal entity authorized by the copyright owner that is making this Agreement with OCI. For legal entities, the entity making a Contribution and all other entities that control, are controlled by, or are under common control with that entity are considered to be a single Contributor. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of
@graemerocher
graemerocher / BookSpec.groovy
Last active December 5, 2017 02:00
Grails @Integration and Spock example that uses setupSpec
package integtest
import grails.test.mixin.integration.Integration
import grails.transaction.*
import spock.lang.*
import geb.spock.*
import grails.util.*
import java.util.concurrent.Callable