acc2877089ee1cf209e25cfceea83048fc5cb473
[photos] / src / main / java / org / wamblee / photos / wicket / HomePage.java
1 /*
2  * Copyright 2005-2010 the original author or authors.
3  * 
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  * 
8  *      http://www.apache.org/licenses/LICENSE-2.0
9  * 
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 package org.wamblee.photos.wicket;
17
18 import java.util.List;
19
20 import javax.inject.Inject;
21
22 import org.apache.wicket.PageParameters;
23 import org.apache.wicket.markup.html.basic.Label;
24 import org.wamblee.photos.model.Album;
25 import org.wamblee.photos.model.PhotoEntry;
26 import org.wamblee.photos.model.plumbing.AllPhotos;
27 import org.wamblee.photos.model.plumbing.AuthorizedPhotos;
28 import org.wamblee.security.authentication.User;
29 import org.wamblee.security.authentication.UserAdministration;
30
31 /**
32  * Homepage
33  */
34 public class HomePage extends BasePage {
35
36     private static final long serialVersionUID = 1L;
37
38     @Inject
39     private User user;
40
41     @Inject
42     private UserAdministration userAdmin;
43
44     @Inject
45     @AllPhotos
46     private Album album;
47
48     @Inject
49     @AuthorizedPhotos
50     private Album authorized;
51
52     /**
53      * Constructor that is invoked when page is invoked without a session.
54      * 
55      * @param parameters
56      *            Page parameters
57      */
58     public HomePage(final PageParameters parameters) throws Exception {
59         super();
60         add(new Label("message", "Hello world!"));
61
62         System.out.println("Currently logged in user: " + user);
63
64         List<String> usernames = userAdmin.getUsers();
65         System.out.println("All user names: " + usernames);
66
67         usernames = userAdmin.getUsers("public");
68         System.out.println("Users in group public: " + usernames);
69
70         System.out.println("Entries: " + album.size());
71         for (int i = 0; i < album.size(); i++) {
72             PhotoEntry entry = album.getEntry(i);
73             System.out.println("Entry " + i + " " + entry.getId() + " " +
74                 entry.getPath());
75         }
76
77         System.out.println("Authorized Entries: " + authorized.size());
78         for (int i = 0; i < authorized.size(); i++) {
79             PhotoEntry entry = authorized.getEntry(i);
80             System.out.println("Entry " + i + " " + entry.getId() + " " +
81                 entry.getPath());
82         }
83     }
84 }