Package cn.edu.zju.acm.onlinejudge.persistence

Examples of cn.edu.zju.acm.onlinejudge.persistence.ReferencePersistence


    private void createReference(ReferenceType type, FormFile formFile, long problemId, long user) throws Exception {
        if (formFile == null) {
            return;
        }

        ReferencePersistence referencePersistence = PersistenceManager.getInstance().getReferencePersistence();
        byte[] data = formFile.getFileData();
        if (data.length == 0) {
            return;
        }
        Reference ref = new Reference();
        ref.setContent(data);
        ref.setReferenceType(type);
        ref.setSize(data.length);

        referencePersistence.createProblemReference(problemId, ref, user);
    }
View Full Code Here


      }
     
    }

    private void zipReference(Problem p, String fileName, ReferenceType type, ZipOutputStream out) throws Exception {
        ReferencePersistence referencePersistence = PersistenceManager.getInstance().getReferencePersistence();
        List<Reference> refs = referencePersistence.getProblemReferences(p.getId(), type);

        if (refs.size() == 0) {
            return;
        }
        Reference ref = refs.get(0);
View Full Code Here

            contentType = name.substring(p + 1);
        }

        byte[] data = formFile.getFileData();

        ReferencePersistence referencePersistence = PersistenceManager.getInstance().getReferencePersistence();
        List<Reference> references = referencePersistence.getProblemReferenceInfo(problemId, type);
        if (references.size() == 0) {
            Reference ref = new Reference();
            ref.setContent(data);
            ref.setContentType(contentType);
            ref.setReferenceType(type);
            ref.setSize(data.length);
            referencePersistence.createProblemReference(problemId, ref, user);
        } else {
            Reference ref = references.get(0);
            ref.setContent(data);
            ref.setContentType(contentType);
            ref.setSize(data.length);
            referencePersistence.updateReference(ref, user);
        }
    }
View Full Code Here

            checkMessages.add(level + "[ " + p.getCode() + "] - " + name + " is empty.");
        }
    }

    private long getReferenceLength(Problem p, ReferenceType type) throws Exception {
        ReferencePersistence referencePersistence = PersistenceManager.getInstance().getReferencePersistence();
        List<Reference> refs = referencePersistence.getProblemReferenceInfo(p.getId(), type);

        if (refs.size() == 0) {
            return -1;
        }
        Reference ref = refs.get(0);
View Full Code Here

    public byte[] getDescription(long problemId) throws PersistenceException {
        Object key = new Long(problemId);
        synchronized (this.descriptionCache) {
            byte[] text = this.descriptionCache.get(key);
            if (text == null) {
                ReferencePersistence referencePersistence = PersistenceManager.getInstance().getReferencePersistence();

                List<Reference> ref = referencePersistence.getProblemReferences(problemId, ReferenceType.DESCRIPTION);
                if (ref.size() > 0) {
                    text = ref.get(0).getContent();
                } else {
                    text = new byte[0];
                }
View Full Code Here

                                        String fileType) throws Exception {
        if (data == null) {
            return;
        }

        ReferencePersistence referencePersistence = PersistenceManager.getInstance().getReferencePersistence();
        if (fileType != null && fileType.trim().length() > 0) {
            fileName = fileName + "." + fileType;
        }

        Reference ref = new Reference();
        ref.setName(fileName);
        ref.setContentType(fileType);
        ref.setContent(data);
        ref.setReferenceType(type);
        ref.setSize(data.length);

        referencePersistence.createProblemReference(problemId, ref, user);
    }
View Full Code Here

        long id = Utility.parseLong(context.getRequest().getParameter("referenceId"));
        String problemCode = context.getRequest().getParameter("code");
        boolean download = "true".equalsIgnoreCase(context.getRequest().getParameter("download"));

        ReferencePersistence referencePersistence = PersistenceManager.getInstance().getReferencePersistence();
        Reference ref = referencePersistence.getReference(id);

        if (ref == null) {
            response.sendError(404);
            return null;
        }
View Full Code Here

        return this.handleSuccess(mapping, context, "success", "?contestId=" + contest.getId());
    }

    private void setReference(String typeKey, ReferenceType type, long problemId, ContextAdapter context) throws Exception {
        ReferencePersistence referencePersistence = PersistenceManager.getInstance().getReferencePersistence();
        List<Reference> references = referencePersistence.getProblemReferenceInfo(problemId, type);
        if (references.size() > 0) {
            context.setAttribute(typeKey, references.get(0));
        }
    }
View Full Code Here

TOP

Related Classes of cn.edu.zju.acm.onlinejudge.persistence.ReferencePersistence

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.