I hereby claim:
- I am muuki88 on github.
- I am muki (https://keybase.io/muki) on keybase.
- I have a public key whose fingerprint is ADDD 9B3B 0F47 EAD3 6D9B C1B9 59B7 C730 340E 30A7
To claim this, I am signing this object:
package net.gutefrage.context | |
import com.twitter.finagle.context.Contexts | |
import com.twitter.finagle.util.ByteArrays | |
import com.twitter.io.Buf | |
import com.twitter.util.{Return, Throw, Try} | |
case class UserContext(userId: Long) | |
/** |
// user endpoint which sets a UserContext | |
val userMean: Endpoint[MeanForUser] = get("weather" / "mean" / "user" :: long) { userId: Long => | |
val userContext = UserContext(userId) | |
Contexts.broadcast.let(UserContext, userContext) { | |
client.mean().map(mean => Ok(MeanForUser(mean, userId))) | |
} | |
} |
package net.gutefrage | |
import com.twitter.finagle._ | |
import com.twitter.finagle.http.service.HttpResponseClassifier | |
import com.twitter.server.TwitterServer | |
import com.twitter.util.Await | |
import io.finch._ | |
import io.finch.circe._ | |
import io.circe.generic.auto._ | |
import net.gutefrage.temperature.thrift._ |
I hereby claim:
To claim this, I am signing this object:
<plugin> | |
<groupId>org.eclipse.tycho</groupId> | |
<artifactId>tycho-packaging-plugin</artifactId> | |
<version>${tycho.version}</version> | |
<dependencies> | |
<dependency> | |
<groupId>org.eclipse.tycho.extras</groupId> | |
<artifactId>tycho-buildtimestamp-jgit</artifactId> | |
<version>${tycho.version}</version> |
interface UserStorage { | |
/** set a value for a specific key */ | |
set(key: string, value: string): void; | |
/** get the value for a specific key. If not present return null*/ | |
get(key: string): string | null; | |
} |
type UserStorageKey = 'setting1' | 'setting2' | 'setting3'; | |
interface UserStorage { | |
/** set a value for a specific key */ | |
set(key: UserStorageKey, value: string): void; | |
/** get the value for a specific key. If not present return null*/ | |
get(key: UserStorageKey): string | null; | |
} |
type KeyValueStorage = { | |
'setting1': boolean; | |
'setting2': string; | |
'setting3': number; | |
}; | |
/** all possible keys for the key-value storage */ | |
type KeyValueStorageKey = keyof KeyValueStorage; | |
interface UserStorage { |
const deserializeBoolean = (value: string) => value === 'true'; | |
const deserializeString = (value: string) => value; | |
const deserializeNumber = (value: string) => parseInt(value); | |
const serializeBoolean = (value: boolean) => value ? 'true' : 'false'; | |
const serializeString = (value: string) => value; | |
const serializeNumber = (value: number) => number.toFixed(); | |
/** | |
* Each key-value storage key needs a function to deserialize its string value | |
* from the database into its own type. Each type is specified in KeyValueStorage. |
node { | |
stage('Git') { | |
git 'https://github.com/muuki88/activator-play-cluster-sample.git' | |
} | |
stage('Build') { | |
def builds = [:] | |
builds['scala'] = { | |
// assumes you have the sbt plugin installed and created an sbt installation named 'sbt-0.13.13' | |
sh "${tool name: 'sbt-0.13.13', type: 'org.jvnet.hudson.plugins.SbtPluginBuilder$SbtInstallation'}/bin/sbt compile test" | |
} |