Home » Author Archives: Arthur Arts

Author Archives: Arthur Arts

Arthur Arts is an experienced Enterprise Java software engineer and hands-on Agile Coach and Scrum Master. He has a strong focus on agile engineering principles and practices and loves to share his knowledge and learn from others. He currently works for JDriven and also works as a photographer, pastor and writes for agilearts.nl

Scala Snippet: How to filter a list in Scala

scala-logo

In Scala, filtering and processing collections is easy and elegant. There are many filtermethods available, but the most used will probably the basic filter method. Here’s a code example of some filtering on my (ex)camera collection. The filter method will not only work on Lists, but on any Scala collection. object MyCameraCollection02 { class Camera(_brand: String, _model: String, _sensorType: String, ...

Read More »

Bruce Lee’s Top 5 Agile Coaching Tips

agile-logo

When I was a kid, I was a big Bruce Lee fan. I walked around the playground rubbing my nose with my thumb. When I had a piece of rope, I had to do my version of the nunchaku routine from Way of the Dragon and made cat-like noises. Looking back at Lee, I find it quite striking how many ...

Read More »

Scala Snippet: Object, Companion Object and Static Methods

scala-logo

If you are a Java developer moving to Scala, one notable difference in terminology that can cause confusion is the term ‘object’. In Java an object is always an instance of a class, created by calling a constructor. Object In Scala an object is used for defining a single instance of a class with the features you want. In practice ...

Read More »

Scala Snippet: Case Class vs plain ordinary Class

scala-logo

In Scala there exist the construct of a ‘case class’. According to Martin Odersky this supports you to write a “regular, non-encapsulated data structure”. It always seems to be associated with pattern matching. So when to use a case class and when to use a ‘plain’ class? I found this nice explanation stating: “Case classes can be seen as plain ...

Read More »

Alternating between Spray-servlet and Spray-can

akka-logo

On a server you may want to deploy your application as a war. How to build a war with spray-servlet. Locally it’s easiest to run without an application server. We include both the spray-servlet and spray-can dependencies: name := "sprayApiExample" version := "1.0" scalaVersion := "2.11.6" libraryDependencies ++= { val akkaV = "2.3.9" val sprayV = "1.3.3" Seq( "io.spray" %% ...

Read More »

Building a war with spray-servlet

akka-logo

We will use spray-servlet to build a war file of our API. So we can run it in a java app server. I assume we already have a working REST API. We will need a web.xml, under src/main/webapp/WEB-INF/: <?xml version="1.0"?> <web-app> <listener> <listener-class>spray.servlet.Initializer</listener-class> </listener> <servlet> <servlet-name>SprayConnectorServlet</servlet-name> <servlet-class>spray.servlet.Servlet30ConnectorServlet</servlet-class> <async-supported>true</async-supported> </servlet> <servlet-mapping> <servlet-name>SprayConnectorServlet</servlet-name> <url-pattern>/*</url-pattern> </servlet-mapping> </web-app> We need an sbt plugin to ...

Read More »

Building a rest api with spray

akka-logo

Building a rest api with akka and spray is easy. This is how I did it: SprayApiApp:                   import akka.actor.{ActorSystem, Props} import akka.io.IO import akka.pattern.ask import akka.util.Timeout import spray.can.Http import scala.concurrent.duration._ object SprayApiApp extends App { //we need an ActorSystem to host our application in implicit val system = ActorSystem("SprayApiApp") //create apiActor ...

Read More »

Chaining futures in scala

scala-logo

Suppose I want to make coffee. This involves 4 steps: 1a. grind coffee beans 1b. heat water 2. combine 3. filter All these steps take time, so they return a Future. This is our domain:     import scala.concurrent.{Await, Future} import scala.concurrent.ExecutionContext.Implicits.global //We need an executionContext to run futures import scala.concurrent.duration._ //This provides the "1 second" syntax class CoffeeBeans() class ...

Read More »

Introduction to Spring profiles

spring-interview-questions-answers

So many men, so many minds. When we are implementing software for different customers we sometimes need to handle various requirements for the same project. For example Customer A needs SAML authentication and customer B needs LDAP authentication. With Spring Profiles (available from Spring 3.1) we are able to provide a way to segregate parts of our implemented application configuration. ...

Read More »

Integration testing on REST urls with Spring Boot

spring-interview-questions-answers

We are building a Spring Boot application with a REST interface and at some point we wanted to test our REST interface, and if possible, integrate this testing with our regular unit tests. One way of doing this, would be to @Autowire our REST controllers and call our endpoints using that. However, this won’t give full converage, since it will ...

Read More »
Do you want to know how to develop your skillset and become a ...

Subscribe to our newsletter to start Rocking right now!

To get you started we give you our best selling eBooks for FREE!
Get ready to Rock!
To download the books, please verify your email address by following the instructions found on the email we just sent you.

THANK YOU!

Close