-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
0 parents
commit 52babd2
Showing
16 changed files
with
567 additions
and
0 deletions.
There are no files selected for viewing
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
out | ||
test-result | ||
tmp |
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,55 @@ | ||
package controllers; | ||
|
||
import play.*; | ||
import play.mvc.*; | ||
|
||
import java.util.*; | ||
|
||
import models.*; | ||
|
||
import com.kjetland.ddsl.model.*; | ||
|
||
public class Application extends Controller { | ||
|
||
public static class ServiceLocationInfo{ | ||
public String url; | ||
public Double quality; | ||
public Date lastUpdated; | ||
public String ip; | ||
} | ||
|
||
public static class ServiceInfo{ | ||
public String env; | ||
public String type; | ||
public String name; | ||
public String version; | ||
public List<ServiceLocationInfo> locations = new ArrayList<ServiceLocationInfo>(); | ||
} | ||
|
||
public static void index() { | ||
|
||
|
||
List<ServiceInfo> services = new ArrayList<ServiceInfo>(); | ||
|
||
for( ServiceWithLocations service : DDSL.getClient().getAllAvailableServices() ){ | ||
ServiceInfo si = new ServiceInfo(); | ||
si.env = service.id().environment(); | ||
si.type = service.id().serviceType(); | ||
si.name = service.id().name(); | ||
si.version = service.id().version(); | ||
|
||
for( ServiceLocation location : service.locations()){ | ||
ServiceLocationInfo sl = new ServiceLocationInfo(); | ||
sl.url = location.url(); | ||
sl.quality = location.quality(); | ||
sl.lastUpdated = location.lastUpdated().toDate(); | ||
sl.ip = location.ip(); | ||
si.locations.add( sl); | ||
} | ||
|
||
services.add( si ); | ||
} | ||
render(services); | ||
} | ||
|
||
} |
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,47 @@ | ||
#{extends 'main.html' /} | ||
#{set title:'Home' /} | ||
|
||
<table> | ||
<tr> | ||
<th>Environment</th> | ||
<th>Service-type</th> | ||
<th>Service-name</th> | ||
<th>Version</th> | ||
<th>Available locations</th> | ||
</tr> | ||
#{list items:services, as:'s'} | ||
<tr> | ||
<td> | ||
${s.env} | ||
</td> | ||
<td> | ||
${s.type} | ||
</td> | ||
<td> | ||
${s.name} | ||
</td> | ||
<td> | ||
${s.version} | ||
</td> | ||
<td> | ||
<table> | ||
<tr> | ||
<th>location</th> | ||
<th>quality</th> | ||
<th>last updated</th> | ||
<th>server ip</th> | ||
|
||
</tr> | ||
#{list items: s.locations, as:'l'} | ||
<tr> | ||
<td>${l.url}</td> | ||
<td>${l.quality}</td> | ||
<td>${l.lastUpdated}</td> | ||
<td>${l.ip}</td> | ||
</tr> | ||
#{/list} | ||
</table> | ||
</td> | ||
</tr> | ||
#{/list} | ||
</table> |
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,19 @@ | ||
<!DOCTYPE html> | ||
|
||
<html> | ||
<head> | ||
<title>Not found</title> | ||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> | ||
</head> | ||
<body> | ||
#{if play.mode.name() == 'DEV'} | ||
#{404 result /} | ||
#{/if} | ||
#{else} | ||
<h1>Not found</h1> | ||
<p> | ||
${result.message} | ||
</p> | ||
#{/else} | ||
</body> | ||
</html> |
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,21 @@ | ||
<!DOCTYPE html> | ||
|
||
<html> | ||
<head> | ||
<title>Application error</title> | ||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> | ||
</head> | ||
<body> | ||
#{if play.mode.name() == 'DEV'} | ||
#{500 exception /} | ||
#{/if} | ||
#{else} | ||
<h1>Oops, an error occured</h1> | ||
#{if exception instanceof play.exceptions.PlayException} | ||
<p> | ||
This exception has been logged with id <strong>${exception.id}</strong>. | ||
</p> | ||
#{/if} | ||
#{/else} | ||
</body> | ||
</html> |
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,16 @@ | ||
<!DOCTYPE html> | ||
|
||
<html> | ||
<head> | ||
<title>#{get 'title' /}</title> | ||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> | ||
<link rel="stylesheet" type="text/css" media="screen" href="@{'/public/stylesheets/main.css'}"> | ||
#{get 'moreStyles' /} | ||
<link rel="shortcut icon" type="image/png" href="@{'/public/images/favicon.png'}"> | ||
<script src="@{'/public/javascripts/jquery-1.4.2.min.js'}" type="text/javascript" charset="utf-8"></script> | ||
#{get 'moreScripts' /} | ||
</head> | ||
<body> | ||
#{doLayout /} | ||
</body> | ||
</html> |
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,193 @@ | ||
# This is the main configuration file for the application. | ||
# ~~~~~ | ||
application.name=ddsl-status | ||
|
||
# Application mode | ||
# ~~~~~ | ||
# Set to dev to enable instant reloading and other development help. | ||
# Otherwise set to prod. | ||
application.mode=dev | ||
%prod.application.mode=prod | ||
|
||
# Secret key | ||
# ~~~~~ | ||
# The secret key is used to secure cryptographics functions | ||
# If you deploy your application to several instances be sure to use the same key ! | ||
application.secret=n9eHxEKAIPrBRRjlqtmytmOt835dr7NDTniGn0s9VioZC5LStdSiaIqPKUvdYmav | ||
|
||
# Additional modules | ||
# ~~~~~ | ||
# A module is another play! application. Add a line for each module you want | ||
# to add to your application. Modules path are either absolutes or relative to | ||
# the application root. | ||
# They get loaded from top to bottom; Syntax: module.{name}={path} | ||
# | ||
# Keep the next line as is to help the play script to manage modules. | ||
# ---- MODULES ---- | ||
module.ddsl=../ddsl-playframework-module/ddsl | ||
|
||
# i18n | ||
# ~~~~~ | ||
# Define locales used by your application. | ||
# You can then place localized messages in conf/messages.{locale} files | ||
# application.langs=fr,en,ja | ||
|
||
# Date format | ||
# ~~~~~ | ||
date.format=yyyy-MM-dd | ||
# date.format.fr=dd/MM/yyyy | ||
|
||
# Server configuration | ||
# ~~~~~ | ||
# If you need to change the HTTP port, uncomment this (default is set to 9000) | ||
# http.port=9000 | ||
# | ||
# By default the server listen for HTTP on the wilcard address. | ||
# You can restrict this. | ||
# http.address=127.0.0.1 | ||
|
||
# Session configuration | ||
# ~~~~~~~~~~~~~~~~~~~~~~ | ||
# By default, session will be written to the transient PLAY_SESSION cookie. | ||
# The cookies are not secured by default, only set it to true | ||
# if you're serving your pages through https. | ||
# application.session.cookie=PLAY | ||
# application.session.maxAge=1h | ||
# application.session.secure=false | ||
|
||
# JVM configuration | ||
# ~~~~~ | ||
# Define which port is used by JPDA when application is in debug mode (default is set to 8000) | ||
# jpda.port=8000 | ||
# | ||
# Java source level => 1.5, 1.6 or 1.7 (experimental) | ||
# java.source=1.5 | ||
|
||
# Log level | ||
# ~~~~~ | ||
# Specify log level for your application. | ||
# If you want a very customized log, create a log4j.properties file in the conf directory | ||
# application.log=INFO | ||
# | ||
# More logging configuration | ||
# application.log.path=/log4j.properties | ||
# application.log.system.out=off | ||
|
||
# Database configuration | ||
# ~~~~~ | ||
# Enable a database engine if needed. | ||
# | ||
# To quickly set up a development database, use either: | ||
# - mem : for a transient in memory database (HSQL in memory) | ||
# - fs : for a simple file written database (HSQL file stored) | ||
# db=mem | ||
# | ||
# To connect to a local MySQL5 database, use: | ||
# db=mysql:user:pwd@database_name | ||
# | ||
# If you need a full JDBC configuration use the following : | ||
# db.url=jdbc:postgresql:database_name | ||
# db.driver=org.postgresql.Driver | ||
# db.user=root | ||
# db.pass=secret | ||
# | ||
# Connections pool configuration : | ||
# db.pool.timeout=1000 | ||
# db.pool.maxSize=30 | ||
# db.pool.minSize=10 | ||
# | ||
# If you want to reuse an existing Datasource from your application server, use: | ||
# db=java:/comp/env/jdbc/myDatasource | ||
|
||
# JPA Configuration (Hibernate) | ||
# ~~~~~ | ||
# | ||
# Specify the custom JPA dialect to use here (default to guess): | ||
# jpa.dialect=org.hibernate.dialect.PostgreSQLDialect | ||
# | ||
# Specify the ddl generation pattern to use. Set to none to disable it | ||
# (default to update in DEV mode, and none in PROD mode): | ||
# jpa.ddl=update | ||
# | ||
# Debug SQL statements (logged using DEBUG level): | ||
# jpa.debugSQL=true | ||
# | ||
# You can even specify additional hibernate properties here: | ||
# hibernate.use_sql_comments=true | ||
# ... | ||
# | ||
# Store path for Blob content | ||
attachments.path=data/attachments | ||
|
||
# Memcached configuration | ||
# ~~~~~ | ||
# Enable memcached if needed. Otherwise a local cache is used. | ||
# memcached=enabled | ||
# | ||
# Specify memcached host (default to 127.0.0.1:11211) | ||
# memcached.host=127.0.0.1:11211 | ||
# | ||
# Or you can specify multiple host to build a distributed cache | ||
# memcached.1.host=127.0.0.1:11211 | ||
# memcached.2.host=127.0.0.1:11212 | ||
|
||
# HTTP Response headers control for static files | ||
# ~~~~~ | ||
# Set the default max-age, telling the user's browser how long it should cache the page. | ||
# Default is 3600 (one hour). Set it to 0 to send no-cache. | ||
# This is only read in prod mode, in dev mode the cache is disabled. | ||
# http.cacheControl=3600 | ||
|
||
# If enabled, Play will generate entity tags automatically and send a 304 when needed. | ||
# Default is true, set it to false to deactivate use of entity tags. | ||
# http.useETag=true | ||
|
||
# Custom mime types | ||
# mimetype.xpi=application/x-xpinstall | ||
|
||
# WS configuration | ||
# ~~~~~ | ||
# If you need to set proxy params for WS requests | ||
# http.proxyHost = localhost | ||
# http.proxyPort = 3128 | ||
# http.proxyUser = jojo | ||
# http.proxyPassword = jojo | ||
|
||
# Mail configuration | ||
# ~~~~~ | ||
# Default is to use a mock Mailer | ||
mail.smtp=mock | ||
|
||
# Or, specify mail host configuration | ||
# mail.smtp.host=127.0.0.1 | ||
# mail.smtp.user=admin | ||
# mail.smtp.pass= | ||
# mail.smtp.channel=ssl | ||
|
||
# Jobs executor | ||
# ~~~~~~ | ||
# Size of the Jobs pool | ||
# play.jobs.pool=10 | ||
|
||
# Execution pool | ||
# ~~~~~ | ||
# Default to 1 thread in DEV mode or (nb processors + 1) threads in PROD mode. | ||
# Try to keep a low as possible. 1 thread will serialize all requests (very useful for debugging purpose) | ||
# play.pool=3 | ||
|
||
# Open file from errors pages | ||
# ~~~~~ | ||
# If your text editor supports opening files by URL, Play! will | ||
# dynamically link error pages to files | ||
# | ||
# Example, for textmate: | ||
# play.editor=txmt://open?url=file://%s&line=%s | ||
|
||
# Testing. Set up a custom configuration for test mode | ||
# ~~~~~ | ||
#%test.module.cobertura=${play.path}/modules/cobertura | ||
%test.application.mode=dev | ||
%test.db=mem | ||
%test.jpa.ddl=create-drop | ||
%test.mail.smtp=mock | ||
|
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
# You can specialize this file for each language. | ||
# For example, for French create a messages.fr file | ||
# |
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,12 @@ | ||
# Routes | ||
# This file defines all application routes (Higher priority routes first) | ||
# ~~~~ | ||
|
||
# Home page | ||
GET / Application.index | ||
|
||
# Map static resources from the /app/public folder to the /public path | ||
GET /public/ staticDir:public | ||
|
||
# Catch all | ||
* /{controller}/{action} {controller}.{action} |
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Oops, something went wrong.