package net.codejava.ws;
import java.util.Calendar;
import java.util.Date;
import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.core.MediaType;
@Path("/datum")
public class DatumGeben {
// @GET
// @Produces(MediaType.TEXT_PLAIN)
// public String datumWrite() {
// return "schreiben Datum hier!";
// }
// @GET
// @Produces(MediaType.TEXT_HTML)
// public String sayHTMLHello() {
// return "<html><title>Hello REST</title><body>"
// +"<h1>Welcome</h1></body></html>
@GET
@Produces(MediaType.APPLICATION_JSON)
public Date sayJsonHello() {
Student st = new Student();
String date = "23.1.2014";
Date mydate = st.getValidDate(date);
if(mydate!=null) {
Calendar calendar=Calendar.getInstance();
//Converting Date to Calendar.
calendar.setTime(mydate);
int dayofWeek=calendar.get(Calendar.DAY_OF_WEEK);
String dayName=getDayName(dayofWeek);
}
// System.out.println("Day : "+dayName);
return mydate;
}
private static String getDayName(int dayofWeek) {
String dayName=null;
switch(dayofWeek)
{
case 1:
dayName="Sunday";
break;
case 2:
dayName="Monday";
break;
case 3:
dayName="Tuesday";
break;
case 4:
dayName="Wednesday";
break;
case 5:
dayName="Thursday";
break;
case 6:
dayName="Friday";
break;
case 7:
dayName="Saturday";
break;
}
return dayName;
}
}
//
package net.codejava.ws;
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
public class Student {
private int id;
private String name;
private String country;
// constructor
public Student() {
super();
}
public Student(int id, String name, String country) {
super();
this.id = id;
this.name = name;
this.country = country;
}
//get and set
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getCountry() {
return country;
}
public void setCountry(String country) {
this.country = country;
}
public Date getValidDate(String date) {
Date mydate=null;
if(isValidDateFormat(date))
{
/*
* d -> Day of month
* M -> Month of year
* y -> Year
*/
DateFormat dateFormat=new SimpleDateFormat("dd.MM.yyyy");
dateFormat.setLenient(false);
try {
mydate=dateFormat.parse(date);
} catch (ParseException e) {
mydate=null;
e.getStackTrace();
}
}
return mydate;
}
public boolean isValidDateFormat(String date) {
String pattern="(0?[1-9]|[12][0-9]|3[01])\\/(0?[1-9]|1[0-2])\\/([0-9]{4})";
boolean result=false;
if(date.matches(pattern))
{
result=true;
}
return result;
}
}