// Path: lolibox-server/src/main/java/io/loli/box/service/StorageService.java
// public interface StorageService {
// 
//     /**
//      * Upload an InputStream with file name
//      *
//      * @param is          file to upload. After uploaded, file name will be changed to
//      *                    nano time.
//      * @param filename    origin name of this file
//      * @param contentType
//      * @return A relative url str generated by storage service
//      * @throws IOException Will be throwed while IO error occurred
//      */
//     public String upload(InputStream is, String filename, String contentType, long length) throws IOException;
// 
// 
//     @Transactional
//     public void deleteFile(String name);
// 
//     @Transactional
//     boolean deleteFile(String name, User user);
// }
// 
// Path: lolibox-server/src/main/java/io/loli/box/util/FileBean.java
// @XmlRootElement
// public class FileBean implements Serializable {
// 
//     public static final long serialVersionUID = -2126687016928386103L;
// 
//     private long size;
//     private String name;
//     private String url;
//     private Date lastModified;
//     private boolean file;
// 
//     public FileBean() {
//     }
// 
//     public FileBean(File file) {
//         setName(file.getName());
//         setLastModified(new Date(file.lastModified()));
//         setFile(file.isFile());
//         if (this.isFile()) {
//             this.setSize(file.length());
//         } else {
//             this.setSize(0L);
//         }
//     }
// 
//     public long getSize() {
//         return size;
//     }
// 
//     public void setSize(long size) {
//         this.size = size;
//     }
// 
//     public String getName() {
//         return name;
//     }
// 
//     public void setName(String name) {
//         this.name = name;
//     }
// 
//     public Date getLastModified() {
//         return lastModified;
//     }
// 
//     public void setLastModified(Date lastModified) {
//         this.lastModified = lastModified;
//     }
// 
//     public boolean isFile() {
//         return file;
//     }
// 
//     public void setFile(boolean file) {
//         this.file = file;
//     }
// 
//     public String getUrl() {
//         return url;
//     }
// 
//     public void setUrl(String url) {
//         this.url = url;
//     }
// }


import io.loli.box.service.StorageService;
import io.loli.box.util.FileBean;
import io.loli.box.util.StatusBean;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
import java.util.Comparator;
package io.loli.box.controller;



/**
 * @author choco
 */
@Controller
@RequestMapping("/admin")
public class AdminController {
    @Autowired
    private StorageService ss;

// Path: lolibox-server/src/main/java/io/loli/box/service/StorageService.java
// public interface StorageService {
// 
//     /**
//      * Upload an InputStream with file name
//      *
//      * @param is          file to upload. After uploaded, file name will be changed to
//      *                    nano time.
//      * @param filename    origin name of this file
//      * @param contentType
//      * @return A relative url str generated by storage service
//      * @throws IOException Will be throwed while IO error occurred
//      */
//     public String upload(InputStream is, String filename, String contentType, long length) throws IOException;
// 
// 
//     @Transactional
//     public void deleteFile(String name);
// 
//     @Transactional
//     boolean deleteFile(String name, User user);
// }
// 
// Path: lolibox-server/src/main/java/io/loli/box/util/FileBean.java
// @XmlRootElement
// public class FileBean implements Serializable {
// 
//     public static final long serialVersionUID = -2126687016928386103L;
// 
//     private long size;
//     private String name;
//     private String url;
//     private Date lastModified;
//     private boolean file;
// 
//     public FileBean() {
//     }
// 
//     public FileBean(File file) {
//         setName(file.getName());
//         setLastModified(new Date(file.lastModified()));
//         setFile(file.isFile());
//         if (this.isFile()) {
//             this.setSize(file.length());
//         } else {
//             this.setSize(0L);
//         }
//     }
// 
//     public long getSize() {
//         return size;
//     }
// 
//     public void setSize(long size) {
//         this.size = size;
//     }
// 
//     public String getName() {
//         return name;
//     }
// 
//     public void setName(String name) {
//         this.name = name;
//     }
// 
//     public Date getLastModified() {
//         return lastModified;
//     }
// 
//     public void setLastModified(Date lastModified) {
//         this.lastModified = lastModified;
//     }
// 
//     public boolean isFile() {
//         return file;
//     }
// 
//     public void setFile(boolean file) {
//         this.file = file;
//     }
// 
//     public String getUrl() {
//         return url;
//     }
// 
//     public void setUrl(String url) {
//         this.url = url;
//     }
// }


// Path: lolibox-server/src/main/java/io/loli/box/controller/AdminController.java
import io.loli.box.service.StorageService;
import io.loli.box.util.FileBean;
import io.loli.box.util.StatusBean;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
import java.util.Comparator;

package io.loli.box.controller;



/**
 * @author choco
 */
@Controller
@RequestMapping("/admin")
public class AdminController {
    @Autowired
    private StorageService ss;

    private static Comparator<FileBean> fileComparator = new Comparator<FileBean>() {