Skip to content

Instantly share code, notes, and snippets.

View ayushmishra2005's full-sized avatar

Ayush Mishra ayushmishra2005

View GitHub Profile
@ayushmishra2005
ayushmishra2005 / HighLevelWebSocketSample.scala
Created December 17, 2017 22:18
Akka HTTP WebSocket example using high-level routing DSL
package com.tutorial.sample
import akka.http.scaladsl.model.ws.{Message, TextMessage}
import akka.http.scaladsl.server.Directives
import akka.stream.scaladsl.{Flow, Source}
trait HighLevelWebSocketSample extends Directives {
def route =
path("chat") {
@ayushmishra2005
ayushmishra2005 / LowLevelServerAPISample.scala
Created November 11, 2017 17:33
Akka HTTP Low-Level Server-Side API Sample
import akka.actor.ActorSystem
import akka.event.Logging
import akka.http.scaladsl.Http
import akka.http.scaladsl.model.HttpMethods._
import akka.http.scaladsl.model._
import akka.stream.ActorMaterializer
import akka.stream.scaladsl.Sink
import scala.concurrent.Future
@ayushmishra2005
ayushmishra2005 / EmployeeRoutes.scala
Last active December 19, 2017 21:02
Akka Http: High-Level Server-Side API iimplementation of *spray-json*
package com.tutorial.sample
import akka.actor.ActorSystem
import akka.event.Logging
import akka.http.scaladsl.marshallers.sprayjson.SprayJsonSupport
import akka.http.scaladsl.model.{ContentTypeRange, MediaTypes, StatusCodes}
import akka.http.scaladsl.server.Directives._
import akka.http.scaladsl.server.{Route, UnsupportedRequestContentTypeRejection}
import akka.http.scaladsl.server.directives.MethodDirectives.{get, post}
import akka.http.scaladsl.server.directives.RouteDirectives.complete
@ayushmishra2005
ayushmishra2005 / AkkaHTTPUriModelExample.scala
Created September 30, 2017 22:31
Akka HTTP: Example of URI model
package com.tutorial.sample
import akka.http.scaladsl.model._
import akka.http.scaladsl.server.Directives._
import akka.http.scaladsl.server.Route
import akka.http.scaladsl.server.directives.RouteDirectives.complete
import akka.http.scaladsl.testkit.ScalatestRouteTest
import org.scalatest.{Matchers, WordSpec}
@ayushmishra2005
ayushmishra2005 / CustomHeaderSpec.scala
Created September 24, 2017 23:03
In Akka HTTP, You can create custom headers by extending ModeledCustomHeader or CustomHeader.
package com.tutorial.sample
import akka.http.scaladsl.model.headers.{CustomHeader, ModeledCustomHeader, ModeledCustomHeaderCompanion, RawHeader}
import org.scalatest._
import scala.util.Try
class CustomHeaderSpec extends FlatSpec with Matchers with BeforeAndAfterAll {
final class ApiTokenModeledHeader(token: String) extends ModeledCustomHeader[ApiTokenModeledHeader] {
@ayushmishra2005
ayushmishra2005 / HttpRequestResponseSampleRoutes.scala
Created September 23, 2017 22:47
Akka HTTP: Examples of HttpRequest and HttpResponse model
package com.tutorial.sample
import akka.http.scaladsl.marshallers.sprayjson.SprayJsonSupport
import akka.http.scaladsl.model.HttpCharsets._
import akka.http.scaladsl.model.HttpMethods.{POST, PUT}
import akka.http.scaladsl.model.HttpProtocols.`HTTP/1.0`
import akka.http.scaladsl.model.MediaTypes.`text/plain`
import akka.http.scaladsl.model.headers.BasicHttpCredentials
import akka.http.scaladsl.model.{StatusCodes, headers => mHeaders, _}
import akka.http.scaladsl.server.Directives._
@ayushmishra2005
ayushmishra2005 / Sum.scala
Created September 8, 2017 20:39
Take first 2 lines of input and print the sum
object Sum {
def main(args: Array[String]) {
println(io.Source.stdin.getLines().take(2).map(_.toInt).sum)
}
}
@ayushmishra2005
ayushmishra2005 / Read.md
Last active September 9, 2020 14:31
Store Scala Collection Into PostgreSQL using Slick

Open PostgreSQL and Create a table student in database student.

CREATE EXTENSION hstore;

CREATE TABLE student (
    id     int,
    name   varchar(254) NOT NULL,
    hobbies  text[],
    marks hstore
);