Skip to content
Snippets Groups Projects
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
BackendJava.java 3.13 KiB
package top;

import object_detection.ObjectDetector;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.annotation.Configuration;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.servlet.config.annotation.CorsRegistry;
import org.springframework.web.servlet.config.annotation.EnableWebMvc;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;

import java.io.FileNotFoundException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Map;

@SpringBootApplication
public class BackendJava {

    @Controller
    public static class BackendService {

        @RequestMapping("/hello")
        @ResponseBody
        public String hello(){
            return "Hello There";
        }
        @RequestMapping("/")
        public String index(){
            return "inde";
        }

        @RequestMapping("/runProcess")
        @ResponseBody
        public boolean runProcess() throws FileNotFoundException {
            System.out.println(" ============> Starting process");
            ObjectDetector.startProcess();
            return true;
        }

        @RequestMapping("/getJSON")
        @ResponseBody
        public Map<String, ArrayList<ArrayList<Float>>> tempJson(){
            Map<String, ArrayList<ArrayList<Float>>> temp = new HashMap<>();

            ArrayList<Float> pp = new ArrayList<>();
            pp.add(0.0f);
            pp.add(0.0f);
            pp.add(0.0f);

            ArrayList<ArrayList<Float>> obj = new ArrayList<>();
            obj.add(pp);

            temp.put("obj1", obj);

            return temp;
        }

        @RequestMapping("/style/main.css")
        public String getStyle(){
            return "style/main.css";
        }


        @RequestMapping("/js/app.js")
        public String getApp(){
            return "js/app.js";
        }
        @RequestMapping("/js/pointCloud.js")
        public String getPC(){
            return "js/pointCloud.js";
        }

    }

    @Configuration
    @EnableWebMvc
    public class WebMvcConfig implements WebMvcConfigurer {
        @Override
        public void addCorsMappings(CorsRegistry registry) {
            registry.addMapping("/**").allowedOrigins("http://localhost:5555");
        }
    }

    public static void main(String[] args) {
        System.out.println("***********************************************");
        System.out.println("{ Running group8's project }");
        System.out.println("***********************************************");
        SpringApplication.run(BackendJava.class, args);
        System.out.println(" ============> GUI/Backend Server has been started on https://localhost:"+ 5555 + ".");
        System.out.println(" ============> Now, use the GUI to interact with the example.");
        System.out.println("***********************************************");
        System.out.println("{ Project completed with success. Hope you enjoyed. }");
        System.out.println("***********************************************");
    }

}