use of models.ModuleVersion in project modules.playframework.org by playframework.
the class Modules method details.
public static Result details(String moduleKey) {
Result result;
final Module module = Module.findByModuleKey(moduleKey);
if (module == null) {
result = notFound("Module not found: " + moduleKey);
} else {
List<ModuleVersion> moduleVersions = ModuleVersion.findByModule(module);
User user = currentUser();
Rate rate = null;
Vote vote = null;
if (user != null) {
rate = CollectionUtils.filterFirst(user.rates, new Filter<Rate>() {
public boolean isAcceptable(Rate rate) {
return rate.playModule.id.equals(module.id);
}
});
vote = CollectionUtils.filterFirst(user.votes, new Filter<Vote>() {
public boolean isAcceptable(Vote vote) {
return vote.playModule.id.equals(module.id);
}
});
}
Set<PlayVersion.MajorVersion> majorVersions = new HashSet<PlayVersion.MajorVersion>();
for (ModuleVersion moduleVersion : moduleVersions) {
majorVersions.addAll(moduleVersion.getMajorVersions());
}
Ebean.refresh(module.rating);
result = ok(moduleDetails.render(user, module, moduleVersions, majorVersions, rate, vote));
}
return result;
}
use of models.ModuleVersion in project modules.playframework.org by playframework.
the class Modules method showVersionManagement.
@RoleHolderPresent
public static Result showVersionManagement(String moduleKey) {
Form<ModuleVersion> form = form(ModuleVersion.class);
Module module = Module.findByModuleKey(moduleKey);
return ok(manageVersionsForm.render(currentUser(), module, PlayVersion.getAll(), form));
}
use of models.ModuleVersion in project modules.playframework.org by playframework.
the class Modules method uploadNewVersion.
@RoleHolderPresent
public static Result uploadNewVersion(String moduleKey) {
Result result;
Form<ModuleVersion> form = form(ModuleVersion.class).bindFromRequest();
User user = currentUser();
if (form.hasErrors()) {
result = badRequest(manageVersionsForm.render(user, Module.findByModuleKey(moduleKey), PlayVersion.getAll(), form));
} else {
ModuleVersion moduleVersion = form.get();
moduleVersion.playModule = Module.findByModuleKey(moduleKey);
moduleVersion.releaseDate = new Date();
moduleVersion.compatibility.addAll(RequestUtils.getListFromRequest(request(), "compatibility.id", PlayVersion.FIND));
// everything below here needs to be implemented
moduleVersion.binaryFile = new BinaryContent();
moduleVersion.binaryFile.content = new byte[] { 1 };
moduleVersion.binaryFile.contentLength = 1;
moduleVersion.save();
moduleVersion.saveManyToManyAssociations("compatibility");
createHistoricalEvent("Module updated - " + moduleVersion.playModule.name, String.format("%s (%s) uploaded version %s of %s", user.displayName, user.userName, moduleVersion.versionCode, moduleVersion.playModule.name));
result = redirect(routes.Modules.myModules());
}
return result;
}
Aggregations