Rev 297 |
Blame |
Compare with Previous |
Last modification |
View Log
| RSS feed
package pt.estgp.estgweb.services.blogs;
import pt.utl.ist.berserk.logic.serviceManager.IService;
import pt.estgp.estgweb.services.expceptions.ServiceException;
import pt.estgp.estgweb.services.data.ImageManager;
import pt.estgp.estgweb.domain.*;
import pt.estgp.estgweb.domain.views.BlogView;
import pt.estgp.estgweb.domain.dao.DaoFactory;
import pt.estgp.estgweb.Globals;
import org.apache.log4j.Logger;
import java.util.Date;
import java.util.HashSet;
/*
* @author Goncalo Luiz gedl [AT] rnl [DOT] ist [DOT] utl [DOT] pt
*
*
* Created at 17/Out/2003 , 23:45:24
*
*/
/**
* @author Jorge Machado
*
*
* Created at 17/Out/2003 , 23:45:24
*
*/
public class CreateBlogService
implements IService
{
private static final 1.5.0/docs/api/java/util/logging/Logger.html">Logger logger =
1.5.0/docs/api/java/util/logging/Logger.html">Logger.
getLogger(CreateBlogService.
class);
private LoadBlogService loadBlogService =
new LoadBlogService
();
public BlogView run
(BlogView bV, UserSession userSession
) throws ServiceException
{
Blog b
;
if(bV.
getId() <= 0
)
{
if(bV.
getImage() !=
null)
{
DaoFactory.
getImageDaoImpl().
save(bV.
getImage());
ImageManager.
store((ImageImpl
) bV.
getImage());
}
if(bV.
getCourseUnitView() !=
null)
{
CourseUnit c = DaoFactory.
getCourseUnitDaoImpl().
get(bV.
getCourseUnitView().
getId());
b = DomainObjectFactory.
createCourseUnitBlogImpl();
((CourseUnitBlogImpl
)b
).
setCourseUnit(c
);
if(c.
getBlogs() ==
null)
c.
setBlogs(new 1.5.0/docs/api/java/util/HashSet.html">HashSet());
c.
getBlogs().
add((CourseUnitBlog
) b
);
if(c.
getTeachers()!=
null && c.
getTeachers().
size() > 0
)
b.
setOwner(c.
getTeachers().
iterator().
next());
}
else
{
b = DomainObjectFactory.
createBlogImpl();
b.
setOwner(userSession.
getUser());
}
b.
setSaveDate(new 5+0%2Fdocs%2Fapi+Date">Date());
DaoFactory.
getBlogDaoImpl().
save(b
);
}
else
{
b = DaoFactory.
getBlogDaoImpl().
get(bV.
getSerializable());
if(bV.
getImage() !=
null && b.
getImage() !=
null)
DaoFactory.
getImageDaoImpl().
delete(b.
getImage().
getId());
if(bV.
getImage() !=
null)
{
DaoFactory.
getImageDaoImpl().
save(bV.
getImage());
ImageManager.
store((ImageImpl
) bV.
getImage());
b.
setImage(bV.
getImage());
}
}
if(userSession.
getUser() !=
null && userSession.
getUser().
isSuperuserOrAdmin())
bV.
persistViewInObjectByAdmin(b
);
else
bV.
persistViewInObject(b
);
if(b.
getTargetRoles() ==
null || b.
getTargetRoles().
length() == 0
)
b.
setTargetRoles(Globals.
ALL_ROLE);
return loadBlogService.
loadIndex(b.
getId(),userSession
);
}
}