@Override
	public void processCommand(String... args) throws SystemCommandException {
		String matriculation = args[0];
		
		String result = "";
		
		Student student = facade.selectStudent(matriculation);
		
		if (student != null){
			result += 
			"Matriculation:\t"+student.getMatriculation()+"\n"+
			"Name:\t" + student.getSurname()+", "+student.getForename()+"\n"+
			"Programme:\t" + student.getProgramme()+"\n";
			
			
			Internship internship = student.getInternship();
			
			if (internship != null){
				result+= 
					"Status:\t"+internship.getStatus()+"\n"+
					"Manager:\t"+ internship.getManager()+"\n"+
					"Email:\t"+ internship.getManagerEmail()+"\n";
				
			}
			
			Role role = internship.getRole();
		
			if (role != null)
				result +=
					"Role\t:"+role.getTitle()+"\n"+
					"Begin:\t"   + formatDate(role.getStart())+"\n"+
					"End:\t"     + formatDate(role.getEnd())+"\n"+
					"Salary:\t"  + role.getSalary()+"\n"+
					"Location\t:" +role.getLocation()+"\n";
			
			Employer employer = internship.getEmployer();
			
			if (employer != null)
				result += 
					"Employer:\t"+employer.getName();
			
			Visit visit = internship.getVisit();
			
			if (visit != null){
				Visitor visitor = visit.getVisitor();
				
				if (visitor != null)
					result+= "Visitor:\t"+visitor.getName()+"\n";
					
				UoGGrade grade = visit.getGrade();
				if (grade != null){
					result += "Grade:\t" + grade + "\n";
					result += "Description:\t" + visit.getDescription() + "\n";
				}			
			}			
			
		}
		dialogue.sendMessage(result);
	}