Example #1
0
func uploadHandler(params martini.Params, w http.ResponseWriter, r *http.Request) {

	// This will upload the file as a raw file and data as record wise.
	var sendRequest = FileServerMessaging.FileRequest{}
	sendRequest.WebRequest = r
	sendRequest.WebResponse = w
	sendRequest.Parameters = make(map[string]string)
	sendRequest.Parameters = params

	sendRequest.Parameters["fileContent"] = string(r.Header.Get("fileContent"))

	exe := FileServer.FileManager{}

	fileResponse := exe.Store(&sendRequest)

	if fileResponse.IsSuccess == true {
		fmt.Fprintf(w, ":File uploaded successfully!")
	} else {
		fmt.Fprintf(w, "Aborted")
	}
}
Example #2
0
func dispatchRequest(r *http.Request, params martini.Params) (responseMessage string, isSuccess bool) { //result is JSON

	objectRequest := messaging.ObjectRequest{}

	paramMap := make(map[string]interface{})
	objectRequest.Extras = paramMap

	message, isSuccess := getObjectRequest(r, &objectRequest, params)

	if isSuccess == false {
		responseMessage = getQueryResponseString("Invalid Query Request", message, false, objectRequest.MessageStack, nil)
	} else {

		dispatcher := processors.Dispatcher{}
		var repResponse repositories.RepositoryResponse = dispatcher.Dispatch(&objectRequest)
		isSuccess = repResponse.IsSuccess

		if isSuccess {
			if repResponse.Body != nil {
				responseMessage = string(repResponse.Body)
				//If it's a FILE
				if checkIfFile(params) != "NAF" {

					rootsaveDirectory := ""
					rootgetDirectory := ""
					if runtime.GOOS == "linux" {
						rootsaveDirectory = objectRequest.Configuration.ServerConfiguration["LinuxFileServer"]["SavePath"]
						rootgetDirectory = objectRequest.Configuration.ServerConfiguration["LinuxFileServer"]["GetPath"]
					} else {
						rootsaveDirectory = objectRequest.Configuration.ServerConfiguration["WindowsFileServer"]["SavePath"]
						rootgetDirectory = objectRequest.Configuration.ServerConfiguration["WindowsFileServer"]["GetPath"]
					}

					var sendRequest = FileServerMessaging.FileRequest{}
					sendRequest.Body = repResponse.Body
					sendRequest.FilePath = ""
					sendRequest.RootSavePath = rootsaveDirectory
					sendRequest.RootGetPath = rootgetDirectory

					exe := FileServer.FileManager{}

					fileResponse := exe.Download(&sendRequest)

					if fileResponse.IsSuccess == true {
						fmt.Println(fileResponse.Message)
					} else {
						fmt.Println(fileResponse.Message)
					}
				}

			} else {
				responseMessage = getQueryResponseString("Successfully completed request", repResponse.Message, isSuccess, objectRequest.MessageStack, repResponse.Data)
			}

		} else {
			responseMessage = getQueryResponseString("Error occured while processing", repResponse.Message, isSuccess, objectRequest.MessageStack, nil)
		}

	}

	return
}