1 import java
.util
.LinkedList
;
2 import java
.lang
.annotation
.Annotation
;
4 import java
.text
.SimpleDateFormat
;
5 import java
.text
.ParseException
;
11 * @param String[] args main() function arguments array
13 public static void main(String
[] args
) {
14 //FIXME: one can create a smart way of building this list
15 LinkedList
<Class
<?
>> packageClasses
= new LinkedList
<Class
<?
>>();
16 packageClasses
.add(Cercle
.class);
17 packageClasses
.add(Entiers
.class);
18 packageClasses
.add(Forme
.class);
19 packageClasses
.add(Image
.class);
20 packageClasses
.add(Node
.class);
21 packageClasses
.add(Liste
.class);
22 packageClasses
.add(Piletransformations
.class);
23 packageClasses
.add(Point
.class);
24 packageClasses
.add(Segment
.class);
25 packageClasses
.add(Structure
.class);
27 System
.out
.println("Class list created after 2009:");
28 for (Class
<?
> cl
: packageClasses
) {
29 ClassPreamble classPreamble
= cl
.getAnnotation(ClassPreamble
.class);
30 if (classPreamble
== null) {
31 System
.out
.println("No annotation for " + cl
.getName());
35 SimpleDateFormat sdf
= new SimpleDateFormat("dd/M/yyyy");
36 Date date
= sdf
.parse(classPreamble
.date());
37 Integer classYear
= date
.getYear() + 1900;
38 if (classYear
>= 2009) {
39 System
.out
.println(" " + cl
.getName() + " created year " + classYear
+ ".");
42 catch (ParseException e
) {