done.

As you wish :) I'm not adding it myself since I believe it is always
possible to find via SVN history who was the author :)

On Sun, Sep 30, 2012 at 2:59 PM, [email protected] <
[email protected]> wrote:

> ++ I hope you don't mind if I complete the header javaDoc of the classes
> with the author information including your name :)
>
> Sebastoan
>
> 2012/9/30 [email protected] <[email protected]>
>
> Hi Maxim,
>>
>> public Server getServerWithMinimumUsers() in the ServerDaoImpl:
>> I tried to understand it but I did not fully understood the operations
>> involved in that method.
>>
>> Could you please write a short sentence/notice in the javaDoc at this
>> method explaining it?
>>
>> Thanks!
>> Sebastian
>>
>> ---------- Forwarded message ----------
>> From: <[email protected]>
>> Date: 2012/9/30
>> Subject: svn commit: r1391961 - in
>> /incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings:
>> axis/services/ data/basic/dao/ persistence/beans/basic/ remote/
>> web/components/admin/servers/
>> To: [email protected]
>>
>>
>> Author: sebawagner
>> Date: Sun Sep 30 07:52:45 2012
>> New Revision: 1391961
>>
>> URL: http://svn.apache.org/viewvc?rev=1391961&view=rev
>> Log:
>> OPENMEETINGS-434 complete Server/serverDaoImpl CRUD via Wicket, add
>> "comments,inserted,insertedby,updated,updatedby" fields in Server entity
>>
>> Modified:
>>
>> incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/axis/services/ServerWebService.java
>>
>> incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/data/basic/dao/ServerDaoImpl.java
>>
>> incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/persistence/beans/basic/Server.java
>>
>> incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/ConferenceService.java
>>
>> incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/UserService.java
>>
>> incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/servers/ServerForm.java
>>
>> incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/servers/ServersPanel.html
>>
>> incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/servers/ServersPanel.java
>>
>> Modified:
>> incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/axis/services/ServerWebService.java
>> URL:
>> http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/axis/services/ServerWebService.java?rev=1391961&r1=1391960&r2=1391961&view=diff
>>
>> ==============================================================================
>> ---
>> incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/axis/services/ServerWebService.java
>> (original)
>> +++
>> incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/axis/services/ServerWebService.java
>> Sun Sep 30 07:52:45 2012
>> @@ -62,7 +62,7 @@ public class ServerWebService {
>>                 Long user_level =
>> userManagement.getUserLevelByID(users_id);
>>
>>                 if (authLevelManagement.checkWebServiceLevel(user_level))
>> {
>> -                       return serversDao.getServerList(start,
>> max).toArray(new Server[0]);
>> +                       return serversDao.get(start, max).toArray(new
>> Server[0]);
>>                 } else {
>>                         log.warn("Insuffisient permissions");
>>                         return null;
>> @@ -81,7 +81,7 @@ public class ServerWebService {
>>                 Long user_level =
>> userManagement.getUserLevelByID(users_id);
>>
>>                 if (authLevelManagement.checkWebServiceLevel(user_level))
>> {
>> -                       return (int)serversDao.getServerCount();
>> +                       return (int)serversDao.count();
>>                 } else {
>>                         log.warn("Insuffisient permissions");
>>                         return -1;
>> @@ -123,7 +123,7 @@ public class ServerWebService {
>>                 Long user_level =
>> userManagement.getUserLevelByID(users_id);
>>
>>                 if (authLevelManagement.checkWebServiceLevel(user_level))
>> {
>> -                       return serversDao.deleteServer(id);
>> +                       return serversDao.delete(id);
>>                 } else {
>>                         log.warn("Insuffisient permissions");
>>                         return false;
>>
>> Modified:
>> incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/data/basic/dao/ServerDaoImpl.java
>> URL:
>> http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/data/basic/dao/ServerDaoImpl.java?rev=1391961&r1=1391960&r2=1391961&view=diff
>>
>> ==============================================================================
>> ---
>> incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/data/basic/dao/ServerDaoImpl.java
>> (original)
>> +++
>> incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/data/basic/dao/ServerDaoImpl.java
>> Sun Sep 30 07:52:45 2012
>> @@ -18,27 +18,47 @@
>>   */
>>  package org.apache.openmeetings.data.basic.dao;
>>
>> +import java.util.Date;
>>  import java.util.List;
>>
>>  import javax.persistence.EntityManager;
>>  import javax.persistence.NoResultException;
>>  import javax.persistence.PersistenceContext;
>> +import javax.persistence.PersistenceException;
>>  import javax.persistence.TypedQuery;
>>
>>  import org.apache.openmeetings.OpenmeetingsVariables;
>> +import org.apache.openmeetings.data.OmDAO;
>> +import org.apache.openmeetings.data.user.dao.UsersDaoImpl;
>>  import org.apache.openmeetings.persistence.beans.basic.Server;
>>  import org.red5.logging.Red5LoggerFactory;
>>  import org.slf4j.Logger;
>> +import org.springframework.beans.factory.annotation.Autowired;
>>  import org.springframework.transaction.annotation.Transactional;
>>
>> +/**
>> + *
>> + * CRUD for {@link Server}
>> + *
>> + * @author solomax, swagner
>> + *
>> + */
>>  @Transactional
>> -public class ServerDaoImpl {
>> +public class ServerDaoImpl implements OmDAO<Server> {
>>         private static final Logger log = Red5LoggerFactory.getLogger(
>>                         ServerDaoImpl.class,
>> OpenmeetingsVariables.webAppRootKey);
>>
>>         @PersistenceContext
>>         private EntityManager em;
>>
>> +       @Autowired
>> +       private UsersDaoImpl usersDao;
>> +
>> +       /**
>> +        * Get a list of all available servers
>> +        *
>> +        * @return
>> +        */
>>         public List<Server> getServerList() {
>>                 log.debug("getServerList enter");
>>                 TypedQuery<Server> q =
>> em.createNamedQuery("getAllServers",
>> @@ -46,8 +66,12 @@ public class ServerDaoImpl {
>>                 return q.getResultList();
>>         }
>>
>> -
>> -       public List<Server> getServerList(int start, int max) {
>> +       /*
>> +        * (non-Javadoc)
>> +        *
>> +        * @see org.apache.openmeetings.data.OmDAO#get(int, int)
>> +        */
>> +       public List<Server> get(int start, int max) {
>>                 log.debug("getServerList enter");
>>                 TypedQuery<Server> q =
>> em.createNamedQuery("getAllServers",
>>                                 Server.class);
>> @@ -57,14 +81,24 @@ public class ServerDaoImpl {
>>                 return q.getResultList();
>>         }
>>
>> -       public long getServerCount() {
>> +       /*
>> +        * (non-Javadoc)
>> +        *
>> +        * @see org.apache.openmeetings.data.OmDAO#count()
>> +        */
>> +       public long count() {
>>                 log.debug("getServerCount enter");
>>                 TypedQuery<Long> q =
>> em.createNamedQuery("getServerCount", Long.class);
>>
>>                 return q.getSingleResult();
>>         }
>>
>> -       public Server getServer(long id) {
>> +       /*
>> +        * (non-Javadoc)
>> +        *
>> +        * @see org.apache.openmeetings.data.OmDAO#get(long)
>> +        */
>> +       public Server get(long id) {
>>                 Server result = null;
>>                 log.debug("getServer enter, id = " + id);
>>                 TypedQuery<Server> q =
>> em.createNamedQuery("getServerById", Server.class);
>> @@ -77,6 +111,12 @@ public class ServerDaoImpl {
>>                 return result;
>>         }
>>
>> +       /**
>> +        * Get server by its address
>> +        *
>> +        * @param address
>> +        * @return
>> +        */
>>         public Server getServerByAddress(String address) {
>>                 log.debug("getServer enter, address = " + address);
>>                 TypedQuery<Server> q =
>> em.createNamedQuery("getServerByAddress", Server.class);
>> @@ -85,6 +125,11 @@ public class ServerDaoImpl {
>>                 return list.size() > 0 ? list.get(0) : null;
>>         }
>>
>> +       /**
>> +        * Get the number of minimum users for a server(?)
>> +        *
>> +        * @return
>> +        */
>>         public Server getServerWithMinimumUsers() {
>>                 Server result = null;
>>                 log.debug("getServerWithMinimumUsers enter");
>> @@ -95,7 +140,7 @@ public class ServerDaoImpl {
>>                         List<Object> r = q1.getResultList();
>>                         if (!r.isEmpty()) {
>>                                 // get server id from first line
>> -                               result =
>> getServer((Long)((Object[])r.get(0))[0]);
>> +                               result =
>> get((Long)((Object[])r.get(0))[0]);
>>                         }
>>                 } else {
>>                         result = l.get(0);
>> @@ -103,8 +148,17 @@ public class ServerDaoImpl {
>>                 return result;
>>         }
>>
>> +       /**
>> +        * @deprecated user standard mechanism of
>> +        *             {@link
>> OmDAO#update(org.apache.openmeetings.persistence.beans.OmEntity, long)}
>> +        * @param id
>> +        * @param name
>> +        * @param address
>> +        * @return
>> +        */
>> +       @Deprecated
>>         public Server saveServer(long id, String name, String address) {
>> -               Server s = getServer(id);
>> +               Server s = get(id);
>>                 if (s == null) {
>>                         s = new Server();
>>                 }
>> @@ -114,8 +168,15 @@ public class ServerDaoImpl {
>>                 return em.merge(s);
>>         }
>>
>> -       public boolean deleteServer(long id) {
>> -               Server s = getServer(id);
>> +       /**
>> +        * @deprecated use standard mechanism of
>> +        *             {@link
>> OmDAO#delete(org.apache.openmeetings.persistence.beans.OmEntity, long)}
>> +        * @param id
>> +        * @return
>> +        */
>> +       @Deprecated
>> +       public boolean delete(long id) {
>> +               Server s = get(id);
>>                 if (s == null) {
>>                         return false;
>>                 }
>> @@ -124,4 +185,45 @@ public class ServerDaoImpl {
>>
>>                 return true;
>>         }
>> +
>> +       /*
>> +        * (non-Javadoc)
>> +        *
>> +        * @see
>> +        *
>> org.apache.openmeetings.data.OmDAO#update(org.apache.openmeetings.persistence
>> +        * .beans.OmEntity, long)
>> +        */
>> +       public void update(Server entity, long userId) {
>> +               try {
>> +                       if (entity.getId() <= 0) {
>> +                               entity.setInserted(new Date());
>> +
>> entity.setInsertedby(usersDao.get(userId));
>> +                               entity.setDeleted(false);
>> +                               em.persist(entity);
>> +                       } else {
>> +                               entity.setUpdated(new Date());
>> +                               entity.setUpdatedby(usersDao.get(userId));
>> +                               entity.setDeleted(false);
>> +                               em.merge(entity);
>> +                       }
>> +               } catch (PersistenceException ex) {
>> +                       log.error("[update LdapConfig]", ex);
>> +               }
>> +       }
>> +
>> +       /*
>> +        * (non-Javadoc)
>> +        *
>> +        * @see
>> +        *
>> org.apache.openmeetings.data.OmDAO#delete(org.apache.openmeetings.persistence
>> +        * .beans.OmEntity, long)
>> +        */
>> +       public void delete(Server entity, long userId) {
>> +               if (entity.getId() >= 0) {
>> +                       entity.setUpdated(new Date());
>> +                       entity.setUpdatedby(usersDao.get(userId));
>> +                       entity.setDeleted(true);
>> +                       em.merge(entity);
>> +               }
>> +       }
>>  }
>>
>> Modified:
>> incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/persistence/beans/basic/Server.java
>> URL:
>> http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/persistence/beans/basic/Server.java?rev=1391961&r1=1391960&r2=1391961&view=diff
>>
>> ==============================================================================
>> ---
>> incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/persistence/beans/basic/Server.java
>> (original)
>> +++
>> incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/persistence/beans/basic/Server.java
>> Sun Sep 30 07:52:45 2012
>> @@ -19,73 +19,97 @@
>>  package org.apache.openmeetings.persistence.beans.basic;
>>
>>  import java.io.Serializable;
>> +import java.util.Date;
>>
>>  import javax.persistence.Column;
>>  import javax.persistence.Entity;
>> +import javax.persistence.FetchType;
>>  import javax.persistence.GeneratedValue;
>>  import javax.persistence.GenerationType;
>>  import javax.persistence.Id;
>> +import javax.persistence.JoinColumn;
>> +import javax.persistence.Lob;
>> +import javax.persistence.ManyToOne;
>>  import javax.persistence.NamedQueries;
>>  import javax.persistence.NamedQuery;
>>  import javax.persistence.Table;
>>
>>  import org.apache.openmeetings.persistence.beans.OmEntity;
>> +import org.apache.openmeetings.persistence.beans.user.Users;
>>  import org.simpleframework.xml.Element;
>>  import org.simpleframework.xml.Root;
>>
>>  @Entity
>>  @NamedQueries({
>> -       @NamedQuery(name="getAllServers", query="SELECT s FROM Server s
>> WHERE s.deleted = false")
>> -       , @NamedQuery(name="getServerCount", query="SELECT COUNT(s) FROM
>> Server s WHERE s.deleted = false")
>> -       , @NamedQuery(name="getServerById", query="SELECT s FROM Server s
>> WHERE s.deleted = false AND s.id = :id")
>> -       , @NamedQuery(name="getServerByAddress", query="SELECT s FROM
>> Server s WHERE s.deleted = false AND s.address = :address")
>> -       , @NamedQuery(name="getServersWithNoUsers"
>> -               , query="SELECT s FROM Server s WHERE s.deleted = false
>> AND s.id NOT IN (SELECT u.server.id FROM Users u where u.server.id IS
>> NOT NULL)")
>> -       , @NamedQuery(name="getServerWithMinimumUsers"
>> -               , query="SELECT s.id, COUNT(u) AS cnt FROM Users u JOIN
>> u.server s WHERE s.deleted = false GROUP BY s.id ORDER BY cnt")
>> -})
>> +               @NamedQuery(name = "getAllServers", query = "SELECT s
>> FROM Server s WHERE s.deleted = false"),
>> +               @NamedQuery(name = "getServerCount", query = "SELECT
>> COUNT(s) FROM Server s WHERE s.deleted = false"),
>> +               @NamedQuery(name = "getServerById", query = "SELECT s
>> FROM Server s WHERE s.deleted = false AND s.id = :id"),
>> +               @NamedQuery(name = "getServerByAddress", query = "SELECT
>> s FROM Server s WHERE s.deleted = false AND s.address = :address"),
>> +               @NamedQuery(name = "getServersWithNoUsers", query =
>> "SELECT s FROM Server s WHERE s.deleted = false AND s.id NOT IN (SELECT
>> u.server.id FROM Users u where u.server.id IS NOT NULL)"),
>> +               @NamedQuery(name = "getServerWithMinimumUsers", query =
>> "SELECT s.id, COUNT(u) AS cnt FROM Users u JOIN u.server s WHERE
>> s.deleted = false GROUP BY s.id ORDER BY cnt") })
>>  @Table(name = "server")
>>  @Root
>>  public class Server implements Serializable, OmEntity {
>> +
>>         private static final long serialVersionUID =
>> -6822732074549167727L;
>> +
>>         @Id
>>         @GeneratedValue(strategy = GenerationType.IDENTITY)
>> -       @Column(name="id")
>> -       @Element(data=true)
>> -       private Long id;
>> -
>> -       @Column(name="name")
>> -       @Element(data=true)
>> +       @Column(name = "id")
>> +       @Element(data = true)
>> +       private long id = 0;
>> +
>> +       @Column(name = "name")
>> +       @Element(data = true)
>>         private String name;
>> -
>> -       @Column(name="address")
>> -       @Element(data=true)
>> +
>> +       @Column(name = "address")
>> +       @Element(data = true)
>>         private String address;
>> -
>> -       @Column(name="deleted", nullable=false)
>> -       @Element(data=true)
>> +
>> +       @Column(name = "inserted")
>> +       public Date inserted;
>> +
>> +       @Column(name = "updated")
>> +       public Date updated;
>> +
>> +       @ManyToOne(fetch = FetchType.EAGER)
>> +       @JoinColumn(name = "insertedby_id", updatable = true, insertable
>> = true)
>> +       public Users insertedby;
>> +
>> +       @ManyToOne(fetch = FetchType.EAGER)
>> +       @JoinColumn(name = "updatedby_id", updatable = true, insertable =
>> true)
>> +       public Users updatedby;
>> +
>> +       @Lob
>> +       @Column(name = "comment_field", length = 2048)
>> +       @Element(data = true, required = false)
>> +       private String comment;
>> +
>> +       @Column(name = "deleted", nullable = false)
>> +       @Element(data = true)
>>         private boolean deleted = false;
>> -
>> +
>>         public Long getId() {
>>                 return id;
>>         }
>> -
>> +
>>         public void setId(Long id) {
>>                 this.id = id;
>>         }
>> -
>> +
>>         public String getName() {
>>                 return name;
>>         }
>> -
>> +
>>         public void setName(String name) {
>>                 this.name = name;
>>         }
>> -
>> +
>>         public String getAddress() {
>>                 return address;
>>         }
>> -
>> +
>>         public void setAddress(String address) {
>>                 this.address = address;
>>         }
>> @@ -98,6 +122,46 @@ public class Server implements Serializa
>>                 this.deleted = deleted;
>>         }
>>
>> +       public Date getInserted() {
>> +               return inserted;
>> +       }
>> +
>> +       public void setInserted(Date inserted) {
>> +               this.inserted = inserted;
>> +       }
>> +
>> +       public Date getUpdated() {
>> +               return updated;
>> +       }
>> +
>> +       public void setUpdated(Date updated) {
>> +               this.updated = updated;
>> +       }
>> +
>> +       public Users getInsertedby() {
>> +               return insertedby;
>> +       }
>> +
>> +       public void setInsertedby(Users insertedby) {
>> +               this.insertedby = insertedby;
>> +       }
>> +
>> +       public Users getUpdatedby() {
>> +               return updatedby;
>> +       }
>> +
>> +       public void setUpdatedby(Users updatedby) {
>> +               this.updatedby = updatedby;
>> +       }
>> +
>> +       public String getComment() {
>> +               return comment;
>> +       }
>> +
>> +       public void setComment(String comment) {
>> +               this.comment = comment;
>> +       }
>> +
>>         @Override
>>         public String toString() {
>>                 return "Server [id=" + id + ", name=" + name + ",
>> address=" + address
>>
>> Modified:
>> incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/ConferenceService.java
>> URL:
>> http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/ConferenceService.java?rev=1391961&r1=1391960&r2=1391961&view=diff
>>
>> ==============================================================================
>> ---
>> incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/ConferenceService.java
>> (original)
>> +++
>> incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/ConferenceService.java
>> Sun Sep 30 07:52:45 2012
>> @@ -699,7 +699,7 @@ public class ConferenceService {
>>                         if (roomId > -1 && serverId > -1) {
>>                                 try {
>>                                         Rooms room =
>> roommanagement.getRoomById(roomId);
>> -
>> room.setServer(serverDao.getServer(serverId));
>> +
>> room.setServer(serverDao.get(serverId));
>>
>> roommanagement.updateRoomObject(room);
>>                                 } catch (Exception e) {
>>                                         log.error("Error while setting
>> server.");
>>
>> Modified:
>> incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/UserService.java
>> URL:
>> http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/UserService.java?rev=1391961&r1=1391960&r2=1391961&view=diff
>>
>> ==============================================================================
>> ---
>> incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/UserService.java
>> (original)
>> +++
>> incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/remote/UserService.java
>> Sun Sep 30 07:52:45 2012
>> @@ -495,7 +495,7 @@ public class UserService {
>>                         if (userId > -1 && serverId > -1) {
>>                                 try {
>>                                         Users user =
>> userManagement.getUserById(userId);
>> -
>> user.setServer(serverDao.getServer(serverId));
>> +
>> user.setServer(serverDao.get(serverId));
>>                                         userManagement.updateUser(user);
>>                                 } catch (Exception e) {
>>                                         log.error("Error while setting
>> server.");
>>
>> Modified:
>> incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/servers/ServerForm.java
>> URL:
>> http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/servers/ServerForm.java?rev=1391961&r1=1391960&r2=1391961&view=diff
>>
>> ==============================================================================
>> ---
>> incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/servers/ServerForm.java
>> (original)
>> +++
>> incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/servers/ServerForm.java
>> Sun Sep 30 07:52:45 2012
>> @@ -18,24 +18,90 @@
>>   */
>>  package org.apache.openmeetings.web.components.admin.servers;
>>
>> +import org.apache.openmeetings.data.basic.dao.ServerDaoImpl;
>>  import org.apache.openmeetings.persistence.beans.basic.Server;
>> +import org.apache.openmeetings.web.app.Application;
>> +import org.apache.openmeetings.web.app.WebSession;
>>  import org.apache.openmeetings.web.components.admin.AdminBaseForm;
>> +import org.apache.wicket.ajax.AjaxRequestTarget;
>>  import org.apache.wicket.ajax.form.AjaxFormValidatingBehavior;
>> +import org.apache.wicket.datetime.markup.html.basic.DateLabel;
>> +import org.apache.wicket.markup.html.WebMarkupContainer;
>> +import org.apache.wicket.markup.html.basic.Label;
>> +import org.apache.wicket.markup.html.form.Form;
>> +import org.apache.wicket.markup.html.form.RequiredTextField;
>> +import org.apache.wicket.markup.html.form.TextArea;
>>  import org.apache.wicket.model.CompoundPropertyModel;
>>  import org.apache.wicket.util.time.Duration;
>>
>> +/**
>> + * Form component to insert/update/delete {@link Server}
>> + *
>> + * @author swagner
>> + *
>> + */
>>  public class ServerForm extends AdminBaseForm<Server> {
>>
>> +       private final WebMarkupContainer listContainer;
>>         private static final long serialVersionUID = 1L;
>>
>> -       public ServerForm(String id, final Server server) {
>> +       public ServerForm(String id, WebMarkupContainer listContainer,
>> +                       final Server server) {
>>                 super(id, new CompoundPropertyModel<Server>(server));
>>                 setOutputMarkupId(true);
>> +               this.listContainer = listContainer;
>> +
>> +               add(new RequiredTextField<String>("name"));
>> +               add(new RequiredTextField<String>("address"));
>> +               add(DateLabel.forDatePattern("inserted", "dd.MM.yyyy
>> HH:mm:ss"));
>> +               add(new Label("insertedby.login"));
>> +               add(DateLabel.forDatePattern("updated", "dd.MM.yyyy
>> HH:mm:ss"));
>> +               add(new Label("updatedby.login"));
>> +               add(new TextArea<String>("comment"));
>>
>> -
>>                 // attach an ajax validation behavior to all form
>> component's keydown
>>                 // event and throttle it down to once per second
>>                 AjaxFormValidatingBehavior.addToAllFormComponents(this,
>> "keydown",
>>                                 Duration.ONE_SECOND);
>>         }
>> +
>> +       @Override
>> +       protected void onSaveSubmit(AjaxRequestTarget target, Form<?>
>> form) {
>> +
>> Application.getBean(ServerDaoImpl.class).update(getModelObject(),
>> +                               WebSession.getUserId());
>> +               Server server =
>> Application.getBean(ServerDaoImpl.class).get(
>> +                               getModelObject().getId());
>> +               this.setModelObject(server);
>> +               target.add(this);
>> +               target.add(listContainer);
>> +       }
>> +
>> +       @Override
>> +       protected void onNewSubmit(AjaxRequestTarget target, Form<?>
>> form) {
>> +               this.setModelObject(new Server());
>> +               target.add(this);
>> +       }
>> +
>> +       @Override
>> +       protected void onRefreshSubmit(AjaxRequestTarget target, Form<?>
>> form) {
>> +               Server server = this.getModelObject();
>> +               if (server.getId() <= 0) {
>> +                       server =
>> Application.getBean(ServerDaoImpl.class).get(
>> +                                       server.getId());
>> +               } else {
>> +                       server = new Server();
>> +               }
>> +               this.setModelObject(server);
>> +               target.add(this);
>> +       }
>> +
>> +       @Override
>> +       protected void onDeleteSubmit(AjaxRequestTarget target, Form<?>
>> form) {
>> +
>> Application.getBean(ServerDaoImpl.class).delete(this.getModelObject(),
>> +                               WebSession.getUserId());
>> +               this.setModelObject(new Server());
>> +               target.add(listContainer);
>> +               target.add(this);
>> +       }
>> +
>>  }
>>
>> Modified:
>> incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/servers/ServersPanel.html
>> URL:
>> http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/servers/ServersPanel.html?rev=1391961&r1=1391960&r2=1391961&view=diff
>>
>> ==============================================================================
>> ---
>> incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/servers/ServersPanel.html
>> (original)
>> +++
>> incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/servers/ServersPanel.html
>> Sun Sep 30 07:52:45 2012
>> @@ -49,6 +49,20 @@
>>                                 <td class="adminPanelColumnForm">
>>                                         <form wicket:id="form"
>> class="adminForm">
>>                                                 <div
>> wicket:id="buttons"></div>
>> +                                               <wicket:ommessage
>> key="1500" />: <input type="text" wicket:id="name"/>
>> +                                   <br/>
>> +                                   <wicket:ommessage key="1501" />:
>> <input type="text" wicket:id="address"/>
>> +                                   <br/>
>> +                                               <wicket:ommessage
>> key="1110" />: <span wicket:id="inserted"/>
>> +                                   <br/>
>> +                                   <wicket:ommessage key="1111" />:
>> <span wicket:id="insertedby.login"/>
>> +                                   <br/>
>> +                                   <wicket:ommessage key="1112" />:
>> <span wicket:id="updated"/>
>> +                                   <br/>
>> +                                   <wicket:ommessage key="1113" />:
>> <span wicket:id="updatedby.login"/>
>> +                                   <br/>
>> +                                   <wicket:ommessage key="270" />:
>> <textarea wicket:id="comment"/>
>> +                                   <br/>
>>                                         </form>
>>                                 </td>
>>                         </tr>
>>
>> Modified:
>> incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/servers/ServersPanel.java
>> URL:
>> http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/servers/ServersPanel.java?rev=1391961&r1=1391960&r2=1391961&view=diff
>>
>> ==============================================================================
>> ---
>> incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/servers/ServersPanel.java
>> (original)
>> +++
>> incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/servers/ServersPanel.java
>> Sun Sep 30 07:52:45 2012
>> @@ -18,13 +18,11 @@
>>   */
>>  package org.apache.openmeetings.web.components.admin.servers;
>>
>> -import java.util.Iterator;
>> -
>>  import org.apache.openmeetings.data.basic.dao.ServerDaoImpl;
>>  import org.apache.openmeetings.persistence.beans.basic.Server;
>> -import org.apache.openmeetings.web.app.Application;
>>  import org.apache.openmeetings.web.components.admin.AdminPanel;
>>  import org.apache.openmeetings.web.components.admin.PagedEntityListPanel;
>> +import org.apache.openmeetings.web.data.OmDataProvider;
>>  import org.apache.wicket.AttributeModifier;
>>  import org.apache.wicket.ajax.AjaxEventBehavior;
>>  import org.apache.wicket.ajax.AjaxRequestTarget;
>> @@ -32,10 +30,13 @@ import org.apache.wicket.markup.html.Web
>>  import org.apache.wicket.markup.html.basic.Label;
>>  import org.apache.wicket.markup.repeater.Item;
>>  import org.apache.wicket.markup.repeater.data.DataView;
>> -import org.apache.wicket.markup.repeater.data.IDataProvider;
>> -import org.apache.wicket.model.CompoundPropertyModel;
>> -import org.apache.wicket.model.IModel;
>>
>> +/**
>> + * Form component with list and form to manipulate {@link Server}
>> + *
>> + * @author swagner
>> + *
>> + */
>>  public class ServersPanel extends AdminPanel {
>>
>>         private static final long serialVersionUID = -1L;
>> @@ -43,26 +44,8 @@ public class ServersPanel extends AdminP
>>
>>         public ServersPanel(String id) {
>>                 super(id);
>> -               DataView<Server> dataView = new
>> DataView<Server>("serverList", new IDataProvider<Server>(){
>> -                       private static final long serialVersionUID = -1L;
>> -
>> -                       public void detach() {
>> -                               //empty
>> -                       }
>> -
>> -                       public Iterator<? extends Server> iterator(long
>> first, long count) {
>> -                               return
>> Application.getBean(ServerDaoImpl.class).getServerList((int)first,
>> (int)count).iterator();
>> -                       }
>> -
>> -                       public long size() {
>> -                               return
>> Application.getBean(ServerDaoImpl.class).getServerCount();
>> -                       }
>> -
>> -                       public IModel<Server> model(Server object) {
>> -                               return new
>> CompoundPropertyModel<Server>(object);
>> -                       }
>> -
>> -               }) {
>> +               DataView<Server> dataView = new
>> DataView<Server>("serverList",
>> +                               new
>> OmDataProvider<Server>(ServerDaoImpl.class)) {
>>                         private static final long serialVersionUID =
>> 8715559628755439596L;
>>
>>                         @Override
>> @@ -95,7 +78,7 @@ public class ServersPanel extends AdminP
>>                 });
>>
>>                 Server Server = new Server();
>> -               form = new ServerForm("form", Server);
>> +               form = new ServerForm("form", listContainer, Server);
>>          add(form);
>>
>>         }
>>
>>
>>
>>
>>
>> --
>> Sebastian Wagner
>> https://twitter.com/#!/dead_lock
>> http://www.webbase-design.de
>> http://www.wagner-sebastian.com
>> [email protected]
>>
>
>
>
> --
> Sebastian Wagner
> https://twitter.com/#!/dead_lock
> http://www.webbase-design.de
> http://www.wagner-sebastian.com
> [email protected]
>



-- 
WBR
Maxim aka solomax

Reply via email to