Browse Source

add to cart working, delete and delete all working

gauravfullcomponent
Gaurav Daharia 4 years ago
parent
commit
ab1b1f2154
56 changed files with 232 additions and 2748 deletions
  1. 1
      .gitignore
  2. 4
      Angular-UrbanBazaar/proxy.config.json
  3. 5
      Angular-UrbanBazaar/src/app/components/cart/cart.component.html
  4. 42
      Angular-UrbanBazaar/src/app/components/cart/cart.component.ts
  5. 2
      Angular-UrbanBazaar/src/app/components/home/home.component.html
  6. 16
      Angular-UrbanBazaar/src/app/components/home/home.component.ts
  7. 12
      Angular-UrbanBazaar/src/app/models/cart.ts
  8. 3
      Angular-UrbanBazaar/src/app/models/product.ts
  9. 50
      Angular-UrbanBazaar/src/app/services/cart.service.ts
  10. 2
      Angular-UrbanBazaar/src/app/services/member-user.service.ts
  11. 2
      Angular-UrbanBazaar/src/app/services/product.service.ts
  12. 14
      Angular-UrbanBazaar/src/app/services/user.service.ts
  13. 3
      README.md
  14. 33
      UB_CartServiceProxy/.gitignore
  15. 117
      UB_CartServiceProxy/.mvn/wrapper/MavenWrapperDownloader.java
  16. BIN
      UB_CartServiceProxy/.mvn/wrapper/maven-wrapper.jar
  17. 2
      UB_CartServiceProxy/.mvn/wrapper/maven-wrapper.properties
  18. 33
      UB_CartServiceProxy/bin/.gitignore
  19. BIN
      UB_CartServiceProxy/bin/.mvn/wrapper/MavenWrapperDownloader.class
  20. BIN
      UB_CartServiceProxy/bin/.mvn/wrapper/maven-wrapper.jar
  21. 2
      UB_CartServiceProxy/bin/.mvn/wrapper/maven-wrapper.properties
  22. 310
      UB_CartServiceProxy/bin/mvnw
  23. 182
      UB_CartServiceProxy/bin/mvnw.cmd
  24. 56
      UB_CartServiceProxy/bin/pom.xml
  25. BIN
      UB_CartServiceProxy/bin/src/main/java/com/example/urbanbazaar/ServletInitializer.class
  26. BIN
      UB_CartServiceProxy/bin/src/main/java/com/example/urbanbazaar/UbCartServiceProxyApplication.class
  27. BIN
      UB_CartServiceProxy/bin/src/main/java/com/example/urbanbazaar/controller/CartController.class
  28. BIN
      UB_CartServiceProxy/bin/src/main/java/com/example/urbanbazaar/model/Cart.class
  29. BIN
      UB_CartServiceProxy/bin/src/main/java/com/example/urbanbazaar/repository/CartRepository.class
  30. 11
      UB_CartServiceProxy/bin/src/main/resources/application.properties
  31. BIN
      UB_CartServiceProxy/bin/src/test/java/com/example/urbanbazaar/UbCartServiceProxyApplicationTests.class
  32. 310
      UB_CartServiceProxy/mvnw
  33. 182
      UB_CartServiceProxy/mvnw.cmd
  34. 56
      UB_CartServiceProxy/pom.xml
  35. 13
      UB_CartServiceProxy/src/main/java/com/example/urbanbazaar/ServletInitializer.java
  36. 13
      UB_CartServiceProxy/src/main/java/com/example/urbanbazaar/UbCartServiceProxyApplication.java
  37. 46
      UB_CartServiceProxy/src/main/java/com/example/urbanbazaar/controller/CartController.java
  38. 78
      UB_CartServiceProxy/src/main/java/com/example/urbanbazaar/model/Cart.java
  39. 17
      UB_CartServiceProxy/src/main/java/com/example/urbanbazaar/repository/CartRepository.java
  40. 11
      UB_CartServiceProxy/src/main/resources/application.properties
  41. 13
      UB_CartServiceProxy/src/test/java/com/example/urbanbazaar/UbCartServiceProxyApplicationTests.java
  42. 33
      UB_OrderServiceProxy/.gitignore
  43. 117
      UB_OrderServiceProxy/.mvn/wrapper/MavenWrapperDownloader.java
  44. BIN
      UB_OrderServiceProxy/.mvn/wrapper/maven-wrapper.jar
  45. 2
      UB_OrderServiceProxy/.mvn/wrapper/maven-wrapper.properties
  46. 310
      UB_OrderServiceProxy/mvnw
  47. 182
      UB_OrderServiceProxy/mvnw.cmd
  48. 56
      UB_OrderServiceProxy/pom.xml
  49. 13
      UB_OrderServiceProxy/src/main/java/com/example/urbanbazaar/UbOrderServiceProxyApplication.java
  50. 68
      UB_OrderServiceProxy/src/main/java/com/example/urbanbazaar/controller/OrderController.java
  51. 186
      UB_OrderServiceProxy/src/main/java/com/example/urbanbazaar/model/Orders.java
  52. 17
      UB_OrderServiceProxy/src/main/java/com/example/urbanbazaar/repository/OrderRepository.java
  53. 11
      UB_OrderServiceProxy/src/main/resources/application.properties
  54. 13
      UB_OrderServiceProxy/src/test/java/com/example/urbanbazaar/UbOrderServiceProxyApplicationTests.java
  55. 181
      grocery_db_tables.sql
  56. 150
      grosery_db.sql

1
.gitignore

@ -1 +0,0 @@
/.metadata/

4
Angular-UrbanBazaar/proxy.config.json

@ -1,10 +1,10 @@
{
"/products":{
"target":"http://10.3.117.7:8007",
"target":"http://10.3.117.5:8014",
"secure":false
},
"/user":{
"target":"http://10.3.117.7:8008",
"target":"http://10.3.117.5:8011",
"secure":false
},
"/orders":{

5
Angular-UrbanBazaar/src/app/components/cart/cart.component.html

@ -8,7 +8,6 @@
<th>S.No</th>
<th>ProductName</th>
<th>ProductPrice</th>
<th>Action</th>
</tr>
</thead>
@ -18,7 +17,7 @@
<td>{{c.productname}}</td>
<td>{{c.productprice}}</td>
<td>
<button class="CartButtons" (click)="removeItem(c)">Delete</button>
<button class="CartButtons" (click)="removeItem(c.cartid)">Delete</button>
</td>
</tr>
<tr>
@ -26,7 +25,7 @@
<td><button (click)=emptyCart() class="CartButtons">Empty Cart</button></td>
<td><button routerLink='/home' class="CartButtons">Shop More</button></td>
<td><button class="CartButtons">Checkout</button></td>
<td><strong>Grand Total : Rs.{{grandTotal}}</strong></td>
<!-- <td><strong>Grand Total : Rs.{{grandTotal}}</strong></td> -->
</tr>
</tbody>
</div>

42
Angular-UrbanBazaar/src/app/components/cart/cart.component.ts

@ -1,8 +1,10 @@
import { Component, OnInit } from '@angular/core';
import { Observable } from 'rxjs';
import { Cart } from 'src/app/models/cart';
import { Product } from 'src/app/models/product';
import { User } from 'src/app/models/user';
import { CartService } from 'src/app/services/cart.service';
import { UserService } from 'src/app/services/user.service';
@Component({
selector: 'app-cart',
@ -11,27 +13,47 @@ import { CartService } from 'src/app/services/cart.service';
})
export class CartComponent implements OnInit {
public cartdetails:any =[];
public grandTotal!: number;
constructor(private cartservice:CartService) {
// this.cartdetails = this.cartservice.showAllOrder();
public cartdetails:Cart[];
constructor(private cartservice:CartService,private userservice:UserService) {
// this.cartdetails = this.cartservice.showCart();
}
ngOnInit(): void {
this.cartservice.getProducts()
this.cartservice.showCart()
.subscribe(res=>{
this.cartdetails = res;
this.grandTotal = this.cartservice.getTotalPrice();
// this.grandTotal = this.cartservice.getTotalPrice();
})
// let uid = this.userservice.currentUser.userid;
// this.cartservice.showCart(uid).subscribe(data1=>{
// this.cartNo = data1.length;
// this.cartdetails = data1;
// this.cartdetails.forEach((i,index)=>{
// this.grandTotal = this.
// })
// })
}
removeItem(item:any){
this.cartservice.removeCartItem(item);
removeItem(id:number){
this.cartservice.deleteCart(id).subscribe(a=>{
this.cartdetails.forEach((i,index)=>{
if(i.cartid == id)
{
this.cartdetails.splice(index,1)
}
})
});
}
emptyCart()
{
this.cartservice.removeAllCart();
this.cartservice.deleteAll().subscribe(b=>{
this.cartdetails.forEach((i,index)=>{
this.cartdetails.splice(index);
})
});
}
}

2
Angular-UrbanBazaar/src/app/components/home/home.component.html

@ -16,7 +16,7 @@
<div class="card" *ngFor="let i of Searchedproducts">
<img src="{{i.productimage}}" style="width:85%">
<h5>{{i.productname}}</h5>
<p class="price">Rs. {{i.productprice}} <br> Weight: {{i.productweight}} Kg</p>
<p class="price">Rs. {{i.productprice}}</p>
<p><button class="AddToCart" (click)=addCart(i)>Add to Cart</button></p>
</div>
</div>

16
Angular-UrbanBazaar/src/app/components/home/home.component.ts

@ -3,6 +3,8 @@ import { ProductService } from './../../services/product.service';
import { Product } from './../../models/product';
import { Router } from '@angular/router';
import { CartService } from 'src/app/services/cart.service';
import { Cart } from 'src/app/models/cart';
import { UserService } from 'src/app/services/user.service';
@Component({
selector: 'app-home',
@ -13,19 +15,27 @@ export class HomeComponent implements OnInit {
public products: Product[];
public Searchedproducts: Product[];
searchValue: string = '';
cartNo: number = 0;
constructor(
private productservice: ProductService,
private router: Router,
private cartservice: CartService
) {}
private cartservice: CartService,
private userservice: UserService
) { }
public showCart() {
this.router.navigateByUrl('/showCart');
}
addCart(item: any) {
this.cartservice.addtoCart(item);
let cart = new Cart();
cart.productid = item.productid;
cart.userid = this.userservice.currentUser.userid;
cart.productprice = item.productprice;
cart.productname = item.productname;
cart.productcategoryid = item.productcategoryid;
this.cartservice.addtoCart(cart).subscribe();
}
searchProduct() {

12
Angular-UrbanBazaar/src/app/models/cart.ts

@ -1,10 +1,10 @@
export class Cart {
public cartid: number;
public userid: number;
public orderid: number;
public productname: string;
public productprice: number;
public quantity: number;
cartid:number;
productid:number;
userid:number;
productname:string;
productprice:number;
productcategoryid:number;
constructor() {}
}

3
Angular-UrbanBazaar/src/app/models/product.ts

@ -2,9 +2,6 @@ export class Product {
public productid: number;
public productname: string;
public productprice: number;
public productweight: number;
public productshortdesc: string;
public productlongdesc: string;
public productimage: string;
public productcategoryid: number;

50
Angular-UrbanBazaar/src/app/services/cart.service.ts

@ -1,55 +1,39 @@
import { HttpClient } from '@angular/common/http';
import { THIS_EXPR } from '@angular/compiler/src/output/output_ast';
import { THIS_EXPR, ThrowStmt } from '@angular/compiler/src/output/output_ast';
import { Injectable } from '@angular/core';
import { BehaviorSubject, Observable } from 'rxjs';
import { Cart } from '../models/cart';
import { Product } from '../models/product';
@Injectable({
providedIn: 'root',
})
export class CartService {
public cartListItem: any = [];
public productList = new BehaviorSubject<any>([]);
private _url: String = 'http://localhost:4405/cart';
private _url: String = 'http://localhost:8014/products';
constructor(private _http: HttpClient) {}
getProducts() {
return this.productList.asObservable();
public addtoCart(cart:Cart)
{
return this._http.post(this._url+"/addCart",cart);
}
setProduct(product: any) {
this.cartListItem.push(...product);
this.productList.next(product);
public showCart():Observable<Cart[]>
{
return this._http.get<Cart[]>(this._url+"/showCart");
}
addtoCart(product: any) {
this.cartListItem.push(product);
this.productList.next(this.cartListItem);
this.getTotalPrice();
// console.log(this.cartListItem);
public deleteCart(pid:number)
{
return this._http.delete<any>(this._url+"/deleteCart/"+pid);
}
getTotalPrice(): number {
let grandTotal = 0;
this.cartListItem.map((a: any) => {
grandTotal += a.productprice;
});
return grandTotal;
public deleteAll()
{
return this._http.delete<any>(this._url+"/deleteAll");
}
removeCartItem(product: any) {
this.cartListItem.map((a: any, index: any) => {
if (product.productid === a.productid) {
this.cartListItem.splice(index, 1);
}
});
this.productList.next(this.cartListItem);
}
removeAllCart() {
this.cartListItem = [];
this.productList.next(this.cartListItem);
}
}

2
Angular-UrbanBazaar/src/app/services/member-user.service.ts

@ -8,7 +8,7 @@ import { HttpClient } from '@angular/common/http';
providedIn: 'root',
})
export class MemberUserService {
private _url: String = 'http://localhost:8008/user/';
private _url: String = 'http://localhost:8011/user/';
constructor(private _http: HttpClient) {}

2
Angular-UrbanBazaar/src/app/services/product.service.ts

@ -7,7 +7,7 @@ import { Product } from '../models/product';
providedIn: 'root',
})
export class ProductService {
private _url: String = 'http://localhost:8007/products';
private _url: String = 'http://localhost:8014/products';
search: string;
constructor(private _http: HttpClient) {}

14
Angular-UrbanBazaar/src/app/services/user.service.ts

@ -9,31 +9,31 @@ import { Observable } from 'rxjs';
})
export class UserService {
currentUser: User;
private _url: string = 'http://localhost:8500/users/';
private _url: string = 'http://localhost:8011/users';
constructor(private _http: HttpClient) {}
public showAllUsers(): Observable<User[]> {
return this._http.get<User[]>(this._url + 'showAllUsers');
return this._http.get<User[]>(this._url + '/showAllUsers');
}
public addUser(user: User) {
return this._http.post(this._url + 'addUser/', user);
return this._http.post(this._url + '/addUser/', user);
}
public searchUser(userid: number) {
return this._http.get<User>(this._url + 'findUserById/' + userid);
return this._http.get<User>(this._url + '/findUserById/' + userid);
}
public updateUser(user: User) {
return this._http.put(this._url + 'update/', user);
return this._http.put(this._url + '/update/', user);
}
public loginUser(user: Login) {
return this._http.post<string>(this._url + 'login/', user);
return this._http.post<string>(this._url + '/login/', user);
}
public findUserByUsername(name: string) {
return this._http.get<User>(this._url + 'findUserByName/' + name);
return this._http.get<User>(this._url + '/findUserByName/' + name);
}
}

3
README.md

@ -1,3 +0,0 @@
# ub_m2
Urban Bazaar with proxy servers.

33
UB_CartServiceProxy/.gitignore

@ -1,33 +0,0 @@
HELP.md
target/
!.mvn/wrapper/maven-wrapper.jar
!**/src/main/**/target/
!**/src/test/**/target/
### STS ###
.apt_generated
.classpath
.factorypath
.project
.settings
.springBeans
.sts4-cache
### IntelliJ IDEA ###
.idea
*.iws
*.iml
*.ipr
### NetBeans ###
/nbproject/private/
/nbbuild/
/dist/
/nbdist/
/.nb-gradle/
build/
!**/src/main/**/build/
!**/src/test/**/build/
### VS Code ###
.vscode/

117
UB_CartServiceProxy/.mvn/wrapper/MavenWrapperDownloader.java

@ -1,117 +0,0 @@
/*
* Copyright 2007-present the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* https://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import java.net.*;
import java.io.*;
import java.nio.channels.*;
import java.util.Properties;
public class MavenWrapperDownloader {
private static final String WRAPPER_VERSION = "0.5.6";
/**
* Default URL to download the maven-wrapper.jar from, if no 'downloadUrl' is provided.
*/
private static final String DEFAULT_DOWNLOAD_URL = "https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/"
+ WRAPPER_VERSION + "/maven-wrapper-" + WRAPPER_VERSION + ".jar";
/**
* Path to the maven-wrapper.properties file, which might contain a downloadUrl property to
* use instead of the default one.
*/
private static final String MAVEN_WRAPPER_PROPERTIES_PATH =
".mvn/wrapper/maven-wrapper.properties";
/**
* Path where the maven-wrapper.jar will be saved to.
*/
private static final String MAVEN_WRAPPER_JAR_PATH =
".mvn/wrapper/maven-wrapper.jar";
/**
* Name of the property which should be used to override the default download url for the wrapper.
*/
private static final String PROPERTY_NAME_WRAPPER_URL = "wrapperUrl";
public static void main(String args[]) {
System.out.println("- Downloader started");
File baseDirectory = new File(args[0]);
System.out.println("- Using base directory: " + baseDirectory.getAbsolutePath());
// If the maven-wrapper.properties exists, read it and check if it contains a custom
// wrapperUrl parameter.
File mavenWrapperPropertyFile = new File(baseDirectory, MAVEN_WRAPPER_PROPERTIES_PATH);
String url = DEFAULT_DOWNLOAD_URL;
if(mavenWrapperPropertyFile.exists()) {
FileInputStream mavenWrapperPropertyFileInputStream = null;
try {
mavenWrapperPropertyFileInputStream = new FileInputStream(mavenWrapperPropertyFile);
Properties mavenWrapperProperties = new Properties();
mavenWrapperProperties.load(mavenWrapperPropertyFileInputStream);
url = mavenWrapperProperties.getProperty(PROPERTY_NAME_WRAPPER_URL, url);
} catch (IOException e) {
System.out.println("- ERROR loading '" + MAVEN_WRAPPER_PROPERTIES_PATH + "'");
} finally {
try {
if(mavenWrapperPropertyFileInputStream != null) {
mavenWrapperPropertyFileInputStream.close();
}
} catch (IOException e) {
// Ignore ...
}
}
}
System.out.println("- Downloading from: " + url);
File outputFile = new File(baseDirectory.getAbsolutePath(), MAVEN_WRAPPER_JAR_PATH);
if(!outputFile.getParentFile().exists()) {
if(!outputFile.getParentFile().mkdirs()) {
System.out.println(
"- ERROR creating output directory '" + outputFile.getParentFile().getAbsolutePath() + "'");
}
}
System.out.println("- Downloading to: " + outputFile.getAbsolutePath());
try {
downloadFileFromURL(url, outputFile);
System.out.println("Done");
System.exit(0);
} catch (Throwable e) {
System.out.println("- Error downloading");
e.printStackTrace();
System.exit(1);
}
}
private static void downloadFileFromURL(String urlString, File destination) throws Exception {
if (System.getenv("MVNW_USERNAME") != null && System.getenv("MVNW_PASSWORD") != null) {
String username = System.getenv("MVNW_USERNAME");
char[] password = System.getenv("MVNW_PASSWORD").toCharArray();
Authenticator.setDefault(new Authenticator() {
@Override
protected PasswordAuthentication getPasswordAuthentication() {
return new PasswordAuthentication(username, password);
}
});
}
URL website = new URL(urlString);
ReadableByteChannel rbc;
rbc = Channels.newChannel(website.openStream());
FileOutputStream fos = new FileOutputStream(destination);
fos.getChannel().transferFrom(rbc, 0, Long.MAX_VALUE);
fos.close();
rbc.close();
}
}

BIN
UB_CartServiceProxy/.mvn/wrapper/maven-wrapper.jar

2
UB_CartServiceProxy/.mvn/wrapper/maven-wrapper.properties

@ -1,2 +0,0 @@
distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.8.2/apache-maven-3.8.2-bin.zip
wrapperUrl=https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar

33
UB_CartServiceProxy/bin/.gitignore

@ -1,33 +0,0 @@
HELP.md
target/
!.mvn/wrapper/maven-wrapper.jar
!**/src/main/**/target/
!**/src/test/**/target/
### STS ###
.apt_generated
.classpath
.factorypath
.project
.settings
.springBeans
.sts4-cache
### IntelliJ IDEA ###
.idea
*.iws
*.iml
*.ipr
### NetBeans ###
/nbproject/private/
/nbbuild/
/dist/
/nbdist/
/.nb-gradle/
build/
!**/src/main/**/build/
!**/src/test/**/build/
### VS Code ###
.vscode/

BIN
UB_CartServiceProxy/bin/.mvn/wrapper/MavenWrapperDownloader.class

BIN
UB_CartServiceProxy/bin/.mvn/wrapper/maven-wrapper.jar

2
UB_CartServiceProxy/bin/.mvn/wrapper/maven-wrapper.properties

@ -1,2 +0,0 @@
distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.8.2/apache-maven-3.8.2-bin.zip
wrapperUrl=https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar

310
UB_CartServiceProxy/bin/mvnw

@ -1,310 +0,0 @@
#!/bin/sh
# ----------------------------------------------------------------------------
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
#
# https://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied. See the License for the
# specific language governing permissions and limitations
# under the License.
# ----------------------------------------------------------------------------
# ----------------------------------------------------------------------------
# Maven Start Up Batch script
#
# Required ENV vars:
# ------------------
# JAVA_HOME - location of a JDK home dir
#
# Optional ENV vars
# -----------------
# M2_HOME - location of maven2's installed home dir
# MAVEN_OPTS - parameters passed to the Java VM when running Maven
# e.g. to debug Maven itself, use
# set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000
# MAVEN_SKIP_RC - flag to disable loading of mavenrc files
# ----------------------------------------------------------------------------
if [ -z "$MAVEN_SKIP_RC" ] ; then
if [ -f /etc/mavenrc ] ; then
. /etc/mavenrc
fi
if [ -f "$HOME/.mavenrc" ] ; then
. "$HOME/.mavenrc"
fi
fi
# OS specific support. $var _must_ be set to either true or false.
cygwin=false;
darwin=false;
mingw=false
case "`uname`" in
CYGWIN*) cygwin=true ;;
MINGW*) mingw=true;;
Darwin*) darwin=true
# Use /usr/libexec/java_home if available, otherwise fall back to /Library/Java/Home
# See https://developer.apple.com/library/mac/qa/qa1170/_index.html
if [ -z "$JAVA_HOME" ]; then
if [ -x "/usr/libexec/java_home" ]; then
export JAVA_HOME="`/usr/libexec/java_home`"
else
export JAVA_HOME="/Library/Java/Home"
fi
fi
;;
esac
if [ -z "$JAVA_HOME" ] ; then
if [ -r /etc/gentoo-release ] ; then
JAVA_HOME=`java-config --jre-home`
fi
fi
if [ -z "$M2_HOME" ] ; then
## resolve links - $0 may be a link to maven's home
PRG="$0"
# need this for relative symlinks
while [ -h "$PRG" ] ; do
ls=`ls -ld "$PRG"`
link=`expr "$ls" : '.*-> \(.*\)$'`
if expr "$link" : '/.*' > /dev/null; then
PRG="$link"
else
PRG="`dirname "$PRG"`/$link"
fi
done
saveddir=`pwd`
M2_HOME=`dirname "$PRG"`/..
# make it fully qualified
M2_HOME=`cd "$M2_HOME" && pwd`
cd "$saveddir"
# echo Using m2 at $M2_HOME
fi
# For Cygwin, ensure paths are in UNIX format before anything is touched
if $cygwin ; then
[ -n "$M2_HOME" ] &&
M2_HOME=`cygpath --unix "$M2_HOME"`
[ -n "$JAVA_HOME" ] &&
JAVA_HOME=`cygpath --unix "$JAVA_HOME"`
[ -n "$CLASSPATH" ] &&
CLASSPATH=`cygpath --path --unix "$CLASSPATH"`
fi
# For Mingw, ensure paths are in UNIX format before anything is touched
if $mingw ; then
[ -n "$M2_HOME" ] &&
M2_HOME="`(cd "$M2_HOME"; pwd)`"
[ -n "$JAVA_HOME" ] &&
JAVA_HOME="`(cd "$JAVA_HOME"; pwd)`"
fi
if [ -z "$JAVA_HOME" ]; then
javaExecutable="`which javac`"
if [ -n "$javaExecutable" ] && ! [ "`expr \"$javaExecutable\" : '\([^ ]*\)'`" = "no" ]; then
# readlink(1) is not available as standard on Solaris 10.
readLink=`which readlink`
if [ ! `expr "$readLink" : '\([^ ]*\)'` = "no" ]; then
if $darwin ; then
javaHome="`dirname \"$javaExecutable\"`"
javaExecutable="`cd \"$javaHome\" && pwd -P`/javac"
else
javaExecutable="`readlink -f \"$javaExecutable\"`"
fi
javaHome="`dirname \"$javaExecutable\"`"
javaHome=`expr "$javaHome" : '\(.*\)/bin'`
JAVA_HOME="$javaHome"
export JAVA_HOME
fi
fi
fi
if [ -z "$JAVACMD" ] ; then
if [ -n "$JAVA_HOME" ] ; then
if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
# IBM's JDK on AIX uses strange locations for the executables
JAVACMD="$JAVA_HOME/jre/sh/java"
else
JAVACMD="$JAVA_HOME/bin/java"
fi
else
JAVACMD="`which java`"
fi
fi
if [ ! -x "$JAVACMD" ] ; then
echo "Error: JAVA_HOME is not defined correctly." >&2
echo " We cannot execute $JAVACMD" >&2
exit 1
fi
if [ -z "$JAVA_HOME" ] ; then
echo "Warning: JAVA_HOME environment variable is not set."
fi
CLASSWORLDS_LAUNCHER=org.codehaus.plexus.classworlds.launcher.Launcher
# traverses directory structure from process work directory to filesystem root
# first directory with .mvn subdirectory is considered project base directory
find_maven_basedir() {
if [ -z "$1" ]
then
echo "Path not specified to find_maven_basedir"
return 1
fi
basedir="$1"
wdir="$1"
while [ "$wdir" != '/' ] ; do
if [ -d "$wdir"/.mvn ] ; then
basedir=$wdir
break
fi
# workaround for JBEAP-8937 (on Solaris 10/Sparc)
if [ -d "${wdir}" ]; then
wdir=`cd "$wdir/.."; pwd`
fi
# end of workaround
done
echo "${basedir}"
}
# concatenates all lines of a file
concat_lines() {
if [ -f "$1" ]; then
echo "$(tr -s '\n' ' ' < "$1")"
fi
}
BASE_DIR=`find_maven_basedir "$(pwd)"`
if [ -z "$BASE_DIR" ]; then
exit 1;
fi
##########################################################################################
# Extension to allow automatically downloading the maven-wrapper.jar from Maven-central
# This allows using the maven wrapper in projects that prohibit checking in binary data.
##########################################################################################
if [ -r "$BASE_DIR/.mvn/wrapper/maven-wrapper.jar" ]; then
if [ "$MVNW_VERBOSE" = true ]; then
echo "Found .mvn/wrapper/maven-wrapper.jar"
fi
else
if [ "$MVNW_VERBOSE" = true ]; then
echo "Couldn't find .mvn/wrapper/maven-wrapper.jar, downloading it ..."
fi
if [ -n "$MVNW_REPOURL" ]; then
jarUrl="$MVNW_REPOURL/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar"
else
jarUrl="https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar"
fi
while IFS="=" read key value; do
case "$key" in (wrapperUrl) jarUrl="$value"; break ;;
esac
done < "$BASE_DIR/.mvn/wrapper/maven-wrapper.properties"
if [ "$MVNW_VERBOSE" = true ]; then
echo "Downloading from: $jarUrl"
fi
wrapperJarPath="$BASE_DIR/.mvn/wrapper/maven-wrapper.jar"
if $cygwin; then
wrapperJarPath=`cygpath --path --windows "$wrapperJarPath"`
fi
if command -v wget > /dev/null; then
if [ "$MVNW_VERBOSE" = true ]; then
echo "Found wget ... using wget"
fi
if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then
wget "$jarUrl" -O "$wrapperJarPath"
else
wget --http-user=$MVNW_USERNAME --http-password=$MVNW_PASSWORD "$jarUrl" -O "$wrapperJarPath"
fi
elif command -v curl > /dev/null; then
if [ "$MVNW_VERBOSE" = true ]; then
echo "Found curl ... using curl"
fi
if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then
curl -o "$wrapperJarPath" "$jarUrl" -f
else
curl --user $MVNW_USERNAME:$MVNW_PASSWORD -o "$wrapperJarPath" "$jarUrl" -f
fi
else
if [ "$MVNW_VERBOSE" = true ]; then
echo "Falling back to using Java to download"
fi
javaClass="$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.java"
# For Cygwin, switch paths to Windows format before running javac
if $cygwin; then
javaClass=`cygpath --path --windows "$javaClass"`
fi
if [ -e "$javaClass" ]; then
if [ ! -e "$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.class" ]; then
if [ "$MVNW_VERBOSE" = true ]; then
echo " - Compiling MavenWrapperDownloader.java ..."
fi
# Compiling the Java class
("$JAVA_HOME/bin/javac" "$javaClass")
fi
if [ -e "$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.class" ]; then
# Running the downloader
if [ "$MVNW_VERBOSE" = true ]; then
echo " - Running MavenWrapperDownloader.java ..."
fi
("$JAVA_HOME/bin/java" -cp .mvn/wrapper MavenWrapperDownloader "$MAVEN_PROJECTBASEDIR")
fi
fi
fi
fi
##########################################################################################
# End of extension
##########################################################################################
export MAVEN_PROJECTBASEDIR=${MAVEN_BASEDIR:-"$BASE_DIR"}
if [ "$MVNW_VERBOSE" = true ]; then
echo $MAVEN_PROJECTBASEDIR
fi
MAVEN_OPTS="$(concat_lines "$MAVEN_PROJECTBASEDIR/.mvn/jvm.config") $MAVEN_OPTS"
# For Cygwin, switch paths to Windows format before running java
if $cygwin; then
[ -n "$M2_HOME" ] &&
M2_HOME=`cygpath --path --windows "$M2_HOME"`
[ -n "$JAVA_HOME" ] &&
JAVA_HOME=`cygpath --path --windows "$JAVA_HOME"`
[ -n "$CLASSPATH" ] &&
CLASSPATH=`cygpath --path --windows "$CLASSPATH"`
[ -n "$MAVEN_PROJECTBASEDIR" ] &&
MAVEN_PROJECTBASEDIR=`cygpath --path --windows "$MAVEN_PROJECTBASEDIR"`
fi
# Provide a "standardized" way to retrieve the CLI args that will
# work with both Windows and non-Windows executions.
MAVEN_CMD_LINE_ARGS="$MAVEN_CONFIG $@"
export MAVEN_CMD_LINE_ARGS
WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain
exec "$JAVACMD" \
$MAVEN_OPTS \
-classpath "$MAVEN_PROJECTBASEDIR/.mvn/wrapper/maven-wrapper.jar" \
"-Dmaven.home=${M2_HOME}" "-Dmaven.multiModuleProjectDirectory=${MAVEN_PROJECTBASEDIR}" \
${WRAPPER_LAUNCHER} $MAVEN_CONFIG "$@"

182
UB_CartServiceProxy/bin/mvnw.cmd

@ -1,182 +0,0 @@
@REM ----------------------------------------------------------------------------
@REM Licensed to the Apache Software Foundation (ASF) under one
@REM or more contributor license agreements. See the NOTICE file
@REM distributed with this work for additional information
@REM regarding copyright ownership. The ASF licenses this file
@REM to you under the Apache License, Version 2.0 (the
@REM "License"); you may not use this file except in compliance
@REM with the License. You may obtain a copy of the License at
@REM
@REM https://www.apache.org/licenses/LICENSE-2.0
@REM
@REM Unless required by applicable law or agreed to in writing,
@REM software distributed under the License is distributed on an
@REM "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
@REM KIND, either express or implied. See the License for the
@REM specific language governing permissions and limitations
@REM under the License.
@REM ----------------------------------------------------------------------------
@REM ----------------------------------------------------------------------------
@REM Maven Start Up Batch script
@REM
@REM Required ENV vars:
@REM JAVA_HOME - location of a JDK home dir
@REM
@REM Optional ENV vars
@REM M2_HOME - location of maven2's installed home dir
@REM MAVEN_BATCH_ECHO - set to 'on' to enable the echoing of the batch commands
@REM MAVEN_BATCH_PAUSE - set to 'on' to wait for a keystroke before ending
@REM MAVEN_OPTS - parameters passed to the Java VM when running Maven
@REM e.g. to debug Maven itself, use
@REM set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000
@REM MAVEN_SKIP_RC - flag to disable loading of mavenrc files
@REM ----------------------------------------------------------------------------
@REM Begin all REM lines with '@' in case MAVEN_BATCH_ECHO is 'on'
@echo off
@REM set title of command window
title %0
@REM enable echoing by setting MAVEN_BATCH_ECHO to 'on'
@if "%MAVEN_BATCH_ECHO%" == "on" echo %MAVEN_BATCH_ECHO%
@REM set %HOME% to equivalent of $HOME
if "%HOME%" == "" (set "HOME=%HOMEDRIVE%%HOMEPATH%")
@REM Execute a user defined script before this one
if not "%MAVEN_SKIP_RC%" == "" goto skipRcPre
@REM check for pre script, once with legacy .bat ending and once with .cmd ending
if exist "%HOME%\mavenrc_pre.bat" call "%HOME%\mavenrc_pre.bat"
if exist "%HOME%\mavenrc_pre.cmd" call "%HOME%\mavenrc_pre.cmd"
:skipRcPre
@setlocal
set ERROR_CODE=0
@REM To isolate internal variables from possible post scripts, we use another setlocal
@setlocal
@REM ==== START VALIDATION ====
if not "%JAVA_HOME%" == "" goto OkJHome
echo.
echo Error: JAVA_HOME not found in your environment. >&2
echo Please set the JAVA_HOME variable in your environment to match the >&2
echo location of your Java installation. >&2
echo.
goto error
:OkJHome
if exist "%JAVA_HOME%\bin\java.exe" goto init
echo.
echo Error: JAVA_HOME is set to an invalid directory. >&2
echo JAVA_HOME = "%JAVA_HOME%" >&2
echo Please set the JAVA_HOME variable in your environment to match the >&2
echo location of your Java installation. >&2
echo.
goto error
@REM ==== END VALIDATION ====
:init
@REM Find the project base dir, i.e. the directory that contains the folder ".mvn".
@REM Fallback to current working directory if not found.
set MAVEN_PROJECTBASEDIR=%MAVEN_BASEDIR%
IF NOT "%MAVEN_PROJECTBASEDIR%"=="" goto endDetectBaseDir
set EXEC_DIR=%CD%
set WDIR=%EXEC_DIR%
:findBaseDir
IF EXIST "%WDIR%"\.mvn goto baseDirFound
cd ..
IF "%WDIR%"=="%CD%" goto baseDirNotFound
set WDIR=%CD%
goto findBaseDir
:baseDirFound
set MAVEN_PROJECTBASEDIR=%WDIR%
cd "%EXEC_DIR%"
goto endDetectBaseDir
:baseDirNotFound
set MAVEN_PROJECTBASEDIR=%EXEC_DIR%
cd "%EXEC_DIR%"
:endDetectBaseDir
IF NOT EXIST "%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config" goto endReadAdditionalConfig
@setlocal EnableExtensions EnableDelayedExpansion
for /F "usebackq delims=" %%a in ("%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config") do set JVM_CONFIG_MAVEN_PROPS=!JVM_CONFIG_MAVEN_PROPS! %%a
@endlocal & set JVM_CONFIG_MAVEN_PROPS=%JVM_CONFIG_MAVEN_PROPS%
:endReadAdditionalConfig
SET MAVEN_JAVA_EXE="%JAVA_HOME%\bin\java.exe"
set WRAPPER_JAR="%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.jar"
set WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain
set DOWNLOAD_URL="https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar"
FOR /F "tokens=1,2 delims==" %%A IN ("%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.properties") DO (
IF "%%A"=="wrapperUrl" SET DOWNLOAD_URL=%%B
)
@REM Extension to allow automatically downloading the maven-wrapper.jar from Maven-central
@REM This allows using the maven wrapper in projects that prohibit checking in binary data.
if exist %WRAPPER_JAR% (
if "%MVNW_VERBOSE%" == "true" (
echo Found %WRAPPER_JAR%
)
) else (
if not "%MVNW_REPOURL%" == "" (
SET DOWNLOAD_URL="%MVNW_REPOURL%/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar"
)
if "%MVNW_VERBOSE%" == "true" (
echo Couldn't find %WRAPPER_JAR%, downloading it ...
echo Downloading from: %DOWNLOAD_URL%
)
powershell -Command "&{"^
"$webclient = new-object System.Net.WebClient;"^
"if (-not ([string]::IsNullOrEmpty('%MVNW_USERNAME%') -and [string]::IsNullOrEmpty('%MVNW_PASSWORD%'))) {"^
"$webclient.Credentials = new-object System.Net.NetworkCredential('%MVNW_USERNAME%', '%MVNW_PASSWORD%');"^
"}"^
"[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; $webclient.DownloadFile('%DOWNLOAD_URL%', '%WRAPPER_JAR%')"^
"}"
if "%MVNW_VERBOSE%" == "true" (
echo Finished downloading %WRAPPER_JAR%
)
)
@REM End of extension
@REM Provide a "standardized" way to retrieve the CLI args that will
@REM work with both Windows and non-Windows executions.
set MAVEN_CMD_LINE_ARGS=%*
%MAVEN_JAVA_EXE% %JVM_CONFIG_MAVEN_PROPS% %MAVEN_OPTS% %MAVEN_DEBUG_OPTS% -classpath %WRAPPER_JAR% "-Dmaven.multiModuleProjectDirectory=%MAVEN_PROJECTBASEDIR%" %WRAPPER_LAUNCHER% %MAVEN_CONFIG% %*
if ERRORLEVEL 1 goto error
goto end
:error
set ERROR_CODE=1
:end
@endlocal & set ERROR_CODE=%ERROR_CODE%
if not "%MAVEN_SKIP_RC%" == "" goto skipRcPost
@REM check for post script, once with legacy .bat ending and once with .cmd ending
if exist "%HOME%\mavenrc_post.bat" call "%HOME%\mavenrc_post.bat"
if exist "%HOME%\mavenrc_post.cmd" call "%HOME%\mavenrc_post.cmd"
:skipRcPost
@REM pause the script if MAVEN_BATCH_PAUSE is set to 'on'
if "%MAVEN_BATCH_PAUSE%" == "on" pause
if "%MAVEN_TERMINATE_CMD%" == "on" exit %ERROR_CODE%
exit /B %ERROR_CODE%

56
UB_CartServiceProxy/bin/pom.xml

@ -1,56 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.5.4</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<groupId>com.example</groupId>
<artifactId>UB_CartServiceProxy</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>UB_CartServiceProxy</name>
<description>UrbanBazaar - Online Grocery Shop</description>
<properties>
<java.version>1.8</java.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<scope>runtime</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>

BIN
UB_CartServiceProxy/bin/src/main/java/com/example/urbanbazaar/ServletInitializer.class

BIN
UB_CartServiceProxy/bin/src/main/java/com/example/urbanbazaar/UbCartServiceProxyApplication.class

BIN
UB_CartServiceProxy/bin/src/main/java/com/example/urbanbazaar/controller/CartController.class

BIN
UB_CartServiceProxy/bin/src/main/java/com/example/urbanbazaar/model/Cart.class

BIN
UB_CartServiceProxy/bin/src/main/java/com/example/urbanbazaar/repository/CartRepository.class

11
UB_CartServiceProxy/bin/src/main/resources/application.properties

@ -1,11 +0,0 @@
server.port=8004
spring.datasource.url=jdbc:mysql://10.3.117.7:3306/grocery_db?createDatabaseIfNotExist=true
spring.datasource.username=testuser
spring.datasource.password=Password123
server.servlet.context-path=/cart
spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.MySQL5Dialect
spring.jpa.hibernate.ddl-auto=update
spring.jackson.serialization.fail-on-empty-beans=false

BIN
UB_CartServiceProxy/bin/src/test/java/com/example/urbanbazaar/UbCartServiceProxyApplicationTests.class

310
UB_CartServiceProxy/mvnw

@ -1,310 +0,0 @@
#!/bin/sh
# ----------------------------------------------------------------------------
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
#
# https://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied. See the License for the
# specific language governing permissions and limitations
# under the License.
# ----------------------------------------------------------------------------
# ----------------------------------------------------------------------------
# Maven Start Up Batch script
#
# Required ENV vars:
# ------------------
# JAVA_HOME - location of a JDK home dir
#
# Optional ENV vars
# -----------------
# M2_HOME - location of maven2's installed home dir
# MAVEN_OPTS - parameters passed to the Java VM when running Maven
# e.g. to debug Maven itself, use
# set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000
# MAVEN_SKIP_RC - flag to disable loading of mavenrc files
# ----------------------------------------------------------------------------
if [ -z "$MAVEN_SKIP_RC" ] ; then
if [ -f /etc/mavenrc ] ; then
. /etc/mavenrc
fi
if [ -f "$HOME/.mavenrc" ] ; then
. "$HOME/.mavenrc"
fi
fi
# OS specific support. $var _must_ be set to either true or false.
cygwin=false;
darwin=false;
mingw=false
case "`uname`" in
CYGWIN*) cygwin=true ;;
MINGW*) mingw=true;;
Darwin*) darwin=true
# Use /usr/libexec/java_home if available, otherwise fall back to /Library/Java/Home
# See https://developer.apple.com/library/mac/qa/qa1170/_index.html
if [ -z "$JAVA_HOME" ]; then
if [ -x "/usr/libexec/java_home" ]; then
export JAVA_HOME="`/usr/libexec/java_home`"
else
export JAVA_HOME="/Library/Java/Home"
fi
fi
;;
esac
if [ -z "$JAVA_HOME" ] ; then
if [ -r /etc/gentoo-release ] ; then
JAVA_HOME=`java-config --jre-home`
fi
fi
if [ -z "$M2_HOME" ] ; then
## resolve links - $0 may be a link to maven's home
PRG="$0"
# need this for relative symlinks
while [ -h "$PRG" ] ; do
ls=`ls -ld "$PRG"`
link=`expr "$ls" : '.*-> \(.*\)$'`
if expr "$link" : '/.*' > /dev/null; then
PRG="$link"
else
PRG="`dirname "$PRG"`/$link"
fi
done
saveddir=`pwd`
M2_HOME=`dirname "$PRG"`/..
# make it fully qualified
M2_HOME=`cd "$M2_HOME" && pwd`
cd "$saveddir"
# echo Using m2 at $M2_HOME
fi
# For Cygwin, ensure paths are in UNIX format before anything is touched
if $cygwin ; then
[ -n "$M2_HOME" ] &&
M2_HOME=`cygpath --unix "$M2_HOME"`
[ -n "$JAVA_HOME" ] &&
JAVA_HOME=`cygpath --unix "$JAVA_HOME"`
[ -n "$CLASSPATH" ] &&
CLASSPATH=`cygpath --path --unix "$CLASSPATH"`
fi
# For Mingw, ensure paths are in UNIX format before anything is touched
if $mingw ; then
[ -n "$M2_HOME" ] &&
M2_HOME="`(cd "$M2_HOME"; pwd)`"
[ -n "$JAVA_HOME" ] &&
JAVA_HOME="`(cd "$JAVA_HOME"; pwd)`"
fi
if [ -z "$JAVA_HOME" ]; then
javaExecutable="`which javac`"
if [ -n "$javaExecutable" ] && ! [ "`expr \"$javaExecutable\" : '\([^ ]*\)'`" = "no" ]; then
# readlink(1) is not available as standard on Solaris 10.
readLink=`which readlink`
if [ ! `expr "$readLink" : '\([^ ]*\)'` = "no" ]; then
if $darwin ; then
javaHome="`dirname \"$javaExecutable\"`"
javaExecutable="`cd \"$javaHome\" && pwd -P`/javac"
else
javaExecutable="`readlink -f \"$javaExecutable\"`"
fi
javaHome="`dirname \"$javaExecutable\"`"
javaHome=`expr "$javaHome" : '\(.*\)/bin'`
JAVA_HOME="$javaHome"
export JAVA_HOME
fi
fi
fi
if [ -z "$JAVACMD" ] ; then
if [ -n "$JAVA_HOME" ] ; then
if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
# IBM's JDK on AIX uses strange locations for the executables
JAVACMD="$JAVA_HOME/jre/sh/java"
else
JAVACMD="$JAVA_HOME/bin/java"
fi
else
JAVACMD="`which java`"
fi
fi
if [ ! -x "$JAVACMD" ] ; then
echo "Error: JAVA_HOME is not defined correctly." >&2
echo " We cannot execute $JAVACMD" >&2
exit 1
fi
if [ -z "$JAVA_HOME" ] ; then
echo "Warning: JAVA_HOME environment variable is not set."
fi
CLASSWORLDS_LAUNCHER=org.codehaus.plexus.classworlds.launcher.Launcher
# traverses directory structure from process work directory to filesystem root
# first directory with .mvn subdirectory is considered project base directory
find_maven_basedir() {
if [ -z "$1" ]
then
echo "Path not specified to find_maven_basedir"
return 1
fi
basedir="$1"
wdir="$1"
while [ "$wdir" != '/' ] ; do
if [ -d "$wdir"/.mvn ] ; then
basedir=$wdir
break
fi
# workaround for JBEAP-8937 (on Solaris 10/Sparc)
if [ -d "${wdir}" ]; then
wdir=`cd "$wdir/.."; pwd`
fi
# end of workaround
done
echo "${basedir}"
}
# concatenates all lines of a file
concat_lines() {
if [ -f "$1" ]; then
echo "$(tr -s '\n' ' ' < "$1")"
fi
}
BASE_DIR=`find_maven_basedir "$(pwd)"`
if [ -z "$BASE_DIR" ]; then
exit 1;
fi
##########################################################################################
# Extension to allow automatically downloading the maven-wrapper.jar from Maven-central
# This allows using the maven wrapper in projects that prohibit checking in binary data.
##########################################################################################
if [ -r "$BASE_DIR/.mvn/wrapper/maven-wrapper.jar" ]; then
if [ "$MVNW_VERBOSE" = true ]; then
echo "Found .mvn/wrapper/maven-wrapper.jar"
fi
else
if [ "$MVNW_VERBOSE" = true ]; then
echo "Couldn't find .mvn/wrapper/maven-wrapper.jar, downloading it ..."
fi
if [ -n "$MVNW_REPOURL" ]; then
jarUrl="$MVNW_REPOURL/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar"
else
jarUrl="https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar"
fi
while IFS="=" read key value; do
case "$key" in (wrapperUrl) jarUrl="$value"; break ;;
esac
done < "$BASE_DIR/.mvn/wrapper/maven-wrapper.properties"
if [ "$MVNW_VERBOSE" = true ]; then
echo "Downloading from: $jarUrl"
fi
wrapperJarPath="$BASE_DIR/.mvn/wrapper/maven-wrapper.jar"
if $cygwin; then
wrapperJarPath=`cygpath --path --windows "$wrapperJarPath"`
fi
if command -v wget > /dev/null; then
if [ "$MVNW_VERBOSE" = true ]; then
echo "Found wget ... using wget"
fi
if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then
wget "$jarUrl" -O "$wrapperJarPath"
else
wget --http-user=$MVNW_USERNAME --http-password=$MVNW_PASSWORD "$jarUrl" -O "$wrapperJarPath"
fi
elif command -v curl > /dev/null; then
if [ "$MVNW_VERBOSE" = true ]; then
echo "Found curl ... using curl"
fi
if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then
curl -o "$wrapperJarPath" "$jarUrl" -f
else
curl --user $MVNW_USERNAME:$MVNW_PASSWORD -o "$wrapperJarPath" "$jarUrl" -f
fi
else
if [ "$MVNW_VERBOSE" = true ]; then
echo "Falling back to using Java to download"
fi
javaClass="$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.java"
# For Cygwin, switch paths to Windows format before running javac
if $cygwin; then
javaClass=`cygpath --path --windows "$javaClass"`
fi
if [ -e "$javaClass" ]; then
if [ ! -e "$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.class" ]; then
if [ "$MVNW_VERBOSE" = true ]; then
echo " - Compiling MavenWrapperDownloader.java ..."
fi
# Compiling the Java class
("$JAVA_HOME/bin/javac" "$javaClass")
fi
if [ -e "$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.class" ]; then
# Running the downloader
if [ "$MVNW_VERBOSE" = true ]; then
echo " - Running MavenWrapperDownloader.java ..."
fi
("$JAVA_HOME/bin/java" -cp .mvn/wrapper MavenWrapperDownloader "$MAVEN_PROJECTBASEDIR")
fi
fi
fi
fi
##########################################################################################
# End of extension
##########################################################################################
export MAVEN_PROJECTBASEDIR=${MAVEN_BASEDIR:-"$BASE_DIR"}
if [ "$MVNW_VERBOSE" = true ]; then
echo $MAVEN_PROJECTBASEDIR
fi
MAVEN_OPTS="$(concat_lines "$MAVEN_PROJECTBASEDIR/.mvn/jvm.config") $MAVEN_OPTS"
# For Cygwin, switch paths to Windows format before running java
if $cygwin; then
[ -n "$M2_HOME" ] &&
M2_HOME=`cygpath --path --windows "$M2_HOME"`
[ -n "$JAVA_HOME" ] &&
JAVA_HOME=`cygpath --path --windows "$JAVA_HOME"`
[ -n "$CLASSPATH" ] &&
CLASSPATH=`cygpath --path --windows "$CLASSPATH"`
[ -n "$MAVEN_PROJECTBASEDIR" ] &&
MAVEN_PROJECTBASEDIR=`cygpath --path --windows "$MAVEN_PROJECTBASEDIR"`
fi
# Provide a "standardized" way to retrieve the CLI args that will
# work with both Windows and non-Windows executions.
MAVEN_CMD_LINE_ARGS="$MAVEN_CONFIG $@"
export MAVEN_CMD_LINE_ARGS
WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain
exec "$JAVACMD" \
$MAVEN_OPTS \
-classpath "$MAVEN_PROJECTBASEDIR/.mvn/wrapper/maven-wrapper.jar" \
"-Dmaven.home=${M2_HOME}" "-Dmaven.multiModuleProjectDirectory=${MAVEN_PROJECTBASEDIR}" \
${WRAPPER_LAUNCHER} $MAVEN_CONFIG "$@"

182
UB_CartServiceProxy/mvnw.cmd

@ -1,182 +0,0 @@
@REM ----------------------------------------------------------------------------
@REM Licensed to the Apache Software Foundation (ASF) under one
@REM or more contributor license agreements. See the NOTICE file
@REM distributed with this work for additional information
@REM regarding copyright ownership. The ASF licenses this file
@REM to you under the Apache License, Version 2.0 (the
@REM "License"); you may not use this file except in compliance
@REM with the License. You may obtain a copy of the License at
@REM
@REM https://www.apache.org/licenses/LICENSE-2.0
@REM
@REM Unless required by applicable law or agreed to in writing,
@REM software distributed under the License is distributed on an
@REM "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
@REM KIND, either express or implied. See the License for the
@REM specific language governing permissions and limitations
@REM under the License.
@REM ----------------------------------------------------------------------------
@REM ----------------------------------------------------------------------------
@REM Maven Start Up Batch script
@REM
@REM Required ENV vars:
@REM JAVA_HOME - location of a JDK home dir
@REM
@REM Optional ENV vars
@REM M2_HOME - location of maven2's installed home dir
@REM MAVEN_BATCH_ECHO - set to 'on' to enable the echoing of the batch commands
@REM MAVEN_BATCH_PAUSE - set to 'on' to wait for a keystroke before ending
@REM MAVEN_OPTS - parameters passed to the Java VM when running Maven
@REM e.g. to debug Maven itself, use
@REM set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000
@REM MAVEN_SKIP_RC - flag to disable loading of mavenrc files
@REM ----------------------------------------------------------------------------
@REM Begin all REM lines with '@' in case MAVEN_BATCH_ECHO is 'on'
@echo off
@REM set title of command window
title %0
@REM enable echoing by setting MAVEN_BATCH_ECHO to 'on'
@if "%MAVEN_BATCH_ECHO%" == "on" echo %MAVEN_BATCH_ECHO%
@REM set %HOME% to equivalent of $HOME
if "%HOME%" == "" (set "HOME=%HOMEDRIVE%%HOMEPATH%")
@REM Execute a user defined script before this one
if not "%MAVEN_SKIP_RC%" == "" goto skipRcPre
@REM check for pre script, once with legacy .bat ending and once with .cmd ending
if exist "%HOME%\mavenrc_pre.bat" call "%HOME%\mavenrc_pre.bat"
if exist "%HOME%\mavenrc_pre.cmd" call "%HOME%\mavenrc_pre.cmd"
:skipRcPre
@setlocal
set ERROR_CODE=0
@REM To isolate internal variables from possible post scripts, we use another setlocal
@setlocal
@REM ==== START VALIDATION ====
if not "%JAVA_HOME%" == "" goto OkJHome
echo.
echo Error: JAVA_HOME not found in your environment. >&2
echo Please set the JAVA_HOME variable in your environment to match the >&2
echo location of your Java installation. >&2
echo.
goto error
:OkJHome
if exist "%JAVA_HOME%\bin\java.exe" goto init
echo.
echo Error: JAVA_HOME is set to an invalid directory. >&2
echo JAVA_HOME = "%JAVA_HOME%" >&2
echo Please set the JAVA_HOME variable in your environment to match the >&2
echo location of your Java installation. >&2
echo.
goto error
@REM ==== END VALIDATION ====
:init
@REM Find the project base dir, i.e. the directory that contains the folder ".mvn".
@REM Fallback to current working directory if not found.
set MAVEN_PROJECTBASEDIR=%MAVEN_BASEDIR%
IF NOT "%MAVEN_PROJECTBASEDIR%"=="" goto endDetectBaseDir
set EXEC_DIR=%CD%
set WDIR=%EXEC_DIR%
:findBaseDir
IF EXIST "%WDIR%"\.mvn goto baseDirFound
cd ..
IF "%WDIR%"=="%CD%" goto baseDirNotFound
set WDIR=%CD%
goto findBaseDir
:baseDirFound
set MAVEN_PROJECTBASEDIR=%WDIR%
cd "%EXEC_DIR%"
goto endDetectBaseDir
:baseDirNotFound
set MAVEN_PROJECTBASEDIR=%EXEC_DIR%
cd "%EXEC_DIR%"
:endDetectBaseDir
IF NOT EXIST "%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config" goto endReadAdditionalConfig
@setlocal EnableExtensions EnableDelayedExpansion
for /F "usebackq delims=" %%a in ("%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config") do set JVM_CONFIG_MAVEN_PROPS=!JVM_CONFIG_MAVEN_PROPS! %%a
@endlocal & set JVM_CONFIG_MAVEN_PROPS=%JVM_CONFIG_MAVEN_PROPS%
:endReadAdditionalConfig
SET MAVEN_JAVA_EXE="%JAVA_HOME%\bin\java.exe"
set WRAPPER_JAR="%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.jar"
set WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain
set DOWNLOAD_URL="https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar"
FOR /F "tokens=1,2 delims==" %%A IN ("%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.properties") DO (
IF "%%A"=="wrapperUrl" SET DOWNLOAD_URL=%%B
)
@REM Extension to allow automatically downloading the maven-wrapper.jar from Maven-central
@REM This allows using the maven wrapper in projects that prohibit checking in binary data.
if exist %WRAPPER_JAR% (
if "%MVNW_VERBOSE%" == "true" (
echo Found %WRAPPER_JAR%
)
) else (
if not "%MVNW_REPOURL%" == "" (
SET DOWNLOAD_URL="%MVNW_REPOURL%/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar"
)
if "%MVNW_VERBOSE%" == "true" (
echo Couldn't find %WRAPPER_JAR%, downloading it ...
echo Downloading from: %DOWNLOAD_URL%
)
powershell -Command "&{"^
"$webclient = new-object System.Net.WebClient;"^
"if (-not ([string]::IsNullOrEmpty('%MVNW_USERNAME%') -and [string]::IsNullOrEmpty('%MVNW_PASSWORD%'))) {"^
"$webclient.Credentials = new-object System.Net.NetworkCredential('%MVNW_USERNAME%', '%MVNW_PASSWORD%');"^
"}"^
"[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; $webclient.DownloadFile('%DOWNLOAD_URL%', '%WRAPPER_JAR%')"^
"}"
if "%MVNW_VERBOSE%" == "true" (
echo Finished downloading %WRAPPER_JAR%
)
)
@REM End of extension
@REM Provide a "standardized" way to retrieve the CLI args that will
@REM work with both Windows and non-Windows executions.
set MAVEN_CMD_LINE_ARGS=%*
%MAVEN_JAVA_EXE% %JVM_CONFIG_MAVEN_PROPS% %MAVEN_OPTS% %MAVEN_DEBUG_OPTS% -classpath %WRAPPER_JAR% "-Dmaven.multiModuleProjectDirectory=%MAVEN_PROJECTBASEDIR%" %WRAPPER_LAUNCHER% %MAVEN_CONFIG% %*
if ERRORLEVEL 1 goto error
goto end
:error
set ERROR_CODE=1
:end
@endlocal & set ERROR_CODE=%ERROR_CODE%
if not "%MAVEN_SKIP_RC%" == "" goto skipRcPost
@REM check for post script, once with legacy .bat ending and once with .cmd ending
if exist "%HOME%\mavenrc_post.bat" call "%HOME%\mavenrc_post.bat"
if exist "%HOME%\mavenrc_post.cmd" call "%HOME%\mavenrc_post.cmd"
:skipRcPost
@REM pause the script if MAVEN_BATCH_PAUSE is set to 'on'
if "%MAVEN_BATCH_PAUSE%" == "on" pause
if "%MAVEN_TERMINATE_CMD%" == "on" exit %ERROR_CODE%
exit /B %ERROR_CODE%

56
UB_CartServiceProxy/pom.xml

@ -1,56 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.5.4</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<groupId>com.example</groupId>
<artifactId>UB_CartServiceProxy</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>UB_CartServiceProxy</name>
<description>UrbanBazaar - Online Grocery Shop</description>
<properties>
<java.version>1.8</java.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<scope>runtime</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>

13
UB_CartServiceProxy/src/main/java/com/example/urbanbazaar/ServletInitializer.java

@ -1,13 +0,0 @@
package com.example.urbanbazaar;
import org.springframework.boot.builder.SpringApplicationBuilder;
import org.springframework.boot.web.servlet.support.SpringBootServletInitializer;
public class ServletInitializer extends SpringBootServletInitializer {
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
return application.sources(UbCartServiceProxyApplication.class);
}
}

13
UB_CartServiceProxy/src/main/java/com/example/urbanbazaar/UbCartServiceProxyApplication.java

@ -1,13 +0,0 @@
package com.example.urbanbazaar;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class UbCartServiceProxyApplication {
public static void main(String[] args) {
SpringApplication.run(UbCartServiceProxyApplication.class, args);
}
}

46
UB_CartServiceProxy/src/main/java/com/example/urbanbazaar/controller/CartController.java

@ -1,46 +0,0 @@
package com.example.urbanbazaar.controller;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
//<<<<<<< HEAD
import org.springframework.web.bind.annotation.CrossOrigin;
//=======
import org.springframework.web.bind.annotation.DeleteMapping;
//>>>>>>> fb2720ddac9edea8fcd3eac8052c4a5bac31e6f0
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RestController;
import com.example.urbanbazaar.model.Cart;
import com.example.urbanbazaar.repository.CartRepository;
@CrossOrigin(origins = "http://localhost:63871")
@RestController
public class CartController {
@Autowired
public CartRepository repo;
@GetMapping("/showCart/{userId}")
public List<Cart> showCartForUserId(int userId) {
return repo.showCartForUserId(userId);
}
@PostMapping("/addCartItem")
public void addCartItemForUserId(@RequestBody Cart cartItem) {
repo.save(cartItem);
}
@DeleteMapping("/deleteCartItem/{cart_id}")
public void deleteCartItemForUserId(int cart_id) {
repo.deleteById(cart_id);
}
@DeleteMapping("/deleteAllCartItemsForUser/{userId}")
public void removeCartItemsForUser(int userId){
repo.deleteAllCartItems(userId);
}
}

78
UB_CartServiceProxy/src/main/java/com/example/urbanbazaar/model/Cart.java

@ -1,78 +0,0 @@
package com.example.urbanbazaar.model;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Table;
@Entity
@Table(name = "cart")
public class Cart {
@Id
private int cartid;
private int userid;
private int orderid;
private String productname;
private int productprice;
private int quantity;
public Cart() {}
public int getCartid() {
return cartid;
}
public void setCartid(int cartid) {
this.cartid = cartid;
}
public int getUserid() {
return userid;
}
public void setUserid(int userid) {
this.userid = userid;
}
public int getOrderid() {
return orderid;
}
public void setOrderid(int orderid) {
this.orderid = orderid;
}
public String getProductname() {
return productname;
}
public void setProductname(String productname) {
this.productname = productname;
}
public int getProductprice() {
return productprice;
}
public void setProductprice(int productprice) {
this.productprice = productprice;
}
public int getQuantity() {
return quantity;
}
public void setQuantity(int quantity) {
this.quantity = quantity;
}
public Cart(int cartid, int userid, int orderid, String productname, int quantity) {
super();
this.cartid = cartid;
this.userid = userid;
this.orderid = orderid;
this.productname = productname;
this.quantity = quantity;
}
}

17
UB_CartServiceProxy/src/main/java/com/example/urbanbazaar/repository/CartRepository.java

@ -1,17 +0,0 @@
package com.example.urbanbazaar.repository;
import java.util.List;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.Query;
import com.example.urbanbazaar.model.Cart;
public interface CartRepository extends JpaRepository<Cart, Integer> {
@Query(value="select * from cart where UserID=?1", nativeQuery=true)
public List<Cart> showCartForUserId(int userId);
@Query(value="delete from cart where UserID=?1", nativeQuery=true)
public void deleteAllCartItems(int userId);
}

11
UB_CartServiceProxy/src/main/resources/application.properties

@ -1,11 +0,0 @@
server.port=8010
spring.datasource.url=jdbc:mysql://10.3.117.21:3306/grocery_db?createDatabaseIfNotExist=true
spring.datasource.username=testuser
spring.datasource.password=Password123
server.servlet.context-path=/cart
spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.MySQL5Dialect
spring.jpa.hibernate.ddl-auto=update
spring.jackson.serialization.fail-on-empty-beans=false

13
UB_CartServiceProxy/src/test/java/com/example/urbanbazaar/UbCartServiceProxyApplicationTests.java

@ -1,13 +0,0 @@
package com.example.urbanbazaar;
import org.junit.jupiter.api.Test;
import org.springframework.boot.test.context.SpringBootTest;
@SpringBootTest
class UbCartServiceProxyApplicationTests {
@Test
void contextLoads() {
}
}

33
UB_OrderServiceProxy/.gitignore

@ -1,33 +0,0 @@
HELP.md
target/
!.mvn/wrapper/maven-wrapper.jar
!**/src/main/**/target/
!**/src/test/**/target/
### STS ###
.apt_generated
.classpath
.factorypath
.project
.settings
.springBeans
.sts4-cache
### IntelliJ IDEA ###
.idea
*.iws
*.iml
*.ipr
### NetBeans ###
/nbproject/private/
/nbbuild/
/dist/
/nbdist/
/.nb-gradle/
build/
!**/src/main/**/build/
!**/src/test/**/build/
### VS Code ###
.vscode/

117
UB_OrderServiceProxy/.mvn/wrapper/MavenWrapperDownloader.java

@ -1,117 +0,0 @@
/*
* Copyright 2007-present the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* https://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import java.net.*;
import java.io.*;
import java.nio.channels.*;
import java.util.Properties;
public class MavenWrapperDownloader {
private static final String WRAPPER_VERSION = "0.5.6";
/**
* Default URL to download the maven-wrapper.jar from, if no 'downloadUrl' is provided.
*/
private static final String DEFAULT_DOWNLOAD_URL = "https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/"
+ WRAPPER_VERSION + "/maven-wrapper-" + WRAPPER_VERSION + ".jar";
/**
* Path to the maven-wrapper.properties file, which might contain a downloadUrl property to
* use instead of the default one.
*/
private static final String MAVEN_WRAPPER_PROPERTIES_PATH =
".mvn/wrapper/maven-wrapper.properties";
/**
* Path where the maven-wrapper.jar will be saved to.
*/
private static final String MAVEN_WRAPPER_JAR_PATH =
".mvn/wrapper/maven-wrapper.jar";
/**
* Name of the property which should be used to override the default download url for the wrapper.
*/
private static final String PROPERTY_NAME_WRAPPER_URL = "wrapperUrl";
public static void main(String args[]) {
System.out.println("- Downloader started");
File baseDirectory = new File(args[0]);
System.out.println("- Using base directory: " + baseDirectory.getAbsolutePath());
// If the maven-wrapper.properties exists, read it and check if it contains a custom
// wrapperUrl parameter.
File mavenWrapperPropertyFile = new File(baseDirectory, MAVEN_WRAPPER_PROPERTIES_PATH);
String url = DEFAULT_DOWNLOAD_URL;
if(mavenWrapperPropertyFile.exists()) {
FileInputStream mavenWrapperPropertyFileInputStream = null;
try {
mavenWrapperPropertyFileInputStream = new FileInputStream(mavenWrapperPropertyFile);
Properties mavenWrapperProperties = new Properties();
mavenWrapperProperties.load(mavenWrapperPropertyFileInputStream);
url = mavenWrapperProperties.getProperty(PROPERTY_NAME_WRAPPER_URL, url);
} catch (IOException e) {
System.out.println("- ERROR loading '" + MAVEN_WRAPPER_PROPERTIES_PATH + "'");
} finally {
try {
if(mavenWrapperPropertyFileInputStream != null) {
mavenWrapperPropertyFileInputStream.close();
}
} catch (IOException e) {
// Ignore ...
}
}
}
System.out.println("- Downloading from: " + url);
File outputFile = new File(baseDirectory.getAbsolutePath(), MAVEN_WRAPPER_JAR_PATH);
if(!outputFile.getParentFile().exists()) {
if(!outputFile.getParentFile().mkdirs()) {
System.out.println(
"- ERROR creating output directory '" + outputFile.getParentFile().getAbsolutePath() + "'");
}
}
System.out.println("- Downloading to: " + outputFile.getAbsolutePath());
try {
downloadFileFromURL(url, outputFile);
System.out.println("Done");
System.exit(0);
} catch (Throwable e) {
System.out.println("- Error downloading");
e.printStackTrace();
System.exit(1);
}
}
private static void downloadFileFromURL(String urlString, File destination) throws Exception {
if (System.getenv("MVNW_USERNAME") != null && System.getenv("MVNW_PASSWORD") != null) {
String username = System.getenv("MVNW_USERNAME");
char[] password = System.getenv("MVNW_PASSWORD").toCharArray();
Authenticator.setDefault(new Authenticator() {
@Override
protected PasswordAuthentication getPasswordAuthentication() {
return new PasswordAuthentication(username, password);
}
});
}
URL website = new URL(urlString);
ReadableByteChannel rbc;
rbc = Channels.newChannel(website.openStream());
FileOutputStream fos = new FileOutputStream(destination);
fos.getChannel().transferFrom(rbc, 0, Long.MAX_VALUE);
fos.close();
rbc.close();
}
}

BIN
UB_OrderServiceProxy/.mvn/wrapper/maven-wrapper.jar

2
UB_OrderServiceProxy/.mvn/wrapper/maven-wrapper.properties

@ -1,2 +0,0 @@
distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.8.2/apache-maven-3.8.2-bin.zip
wrapperUrl=https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar

310
UB_OrderServiceProxy/mvnw

@ -1,310 +0,0 @@
#!/bin/sh
# ----------------------------------------------------------------------------
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
#
# https://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied. See the License for the
# specific language governing permissions and limitations
# under the License.
# ----------------------------------------------------------------------------
# ----------------------------------------------------------------------------
# Maven Start Up Batch script
#
# Required ENV vars:
# ------------------
# JAVA_HOME - location of a JDK home dir
#
# Optional ENV vars
# -----------------
# M2_HOME - location of maven2's installed home dir
# MAVEN_OPTS - parameters passed to the Java VM when running Maven
# e.g. to debug Maven itself, use
# set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000
# MAVEN_SKIP_RC - flag to disable loading of mavenrc files
# ----------------------------------------------------------------------------
if [ -z "$MAVEN_SKIP_RC" ] ; then
if [ -f /etc/mavenrc ] ; then
. /etc/mavenrc
fi
if [ -f "$HOME/.mavenrc" ] ; then
. "$HOME/.mavenrc"
fi
fi
# OS specific support. $var _must_ be set to either true or false.
cygwin=false;
darwin=false;
mingw=false
case "`uname`" in
CYGWIN*) cygwin=true ;;
MINGW*) mingw=true;;
Darwin*) darwin=true
# Use /usr/libexec/java_home if available, otherwise fall back to /Library/Java/Home
# See https://developer.apple.com/library/mac/qa/qa1170/_index.html
if [ -z "$JAVA_HOME" ]; then
if [ -x "/usr/libexec/java_home" ]; then
export JAVA_HOME="`/usr/libexec/java_home`"
else
export JAVA_HOME="/Library/Java/Home"
fi
fi
;;
esac
if [ -z "$JAVA_HOME" ] ; then
if [ -r /etc/gentoo-release ] ; then
JAVA_HOME=`java-config --jre-home`
fi
fi
if [ -z "$M2_HOME" ] ; then
## resolve links - $0 may be a link to maven's home
PRG="$0"
# need this for relative symlinks
while [ -h "$PRG" ] ; do
ls=`ls -ld "$PRG"`
link=`expr "$ls" : '.*-> \(.*\)$'`
if expr "$link" : '/.*' > /dev/null; then
PRG="$link"
else
PRG="`dirname "$PRG"`/$link"
fi
done
saveddir=`pwd`
M2_HOME=`dirname "$PRG"`/..
# make it fully qualified
M2_HOME=`cd "$M2_HOME" && pwd`
cd "$saveddir"
# echo Using m2 at $M2_HOME
fi
# For Cygwin, ensure paths are in UNIX format before anything is touched
if $cygwin ; then
[ -n "$M2_HOME" ] &&
M2_HOME=`cygpath --unix "$M2_HOME"`
[ -n "$JAVA_HOME" ] &&
JAVA_HOME=`cygpath --unix "$JAVA_HOME"`
[ -n "$CLASSPATH" ] &&
CLASSPATH=`cygpath --path --unix "$CLASSPATH"`
fi
# For Mingw, ensure paths are in UNIX format before anything is touched
if $mingw ; then
[ -n "$M2_HOME" ] &&
M2_HOME="`(cd "$M2_HOME"; pwd)`"
[ -n "$JAVA_HOME" ] &&
JAVA_HOME="`(cd "$JAVA_HOME"; pwd)`"
fi
if [ -z "$JAVA_HOME" ]; then
javaExecutable="`which javac`"
if [ -n "$javaExecutable" ] && ! [ "`expr \"$javaExecutable\" : '\([^ ]*\)'`" = "no" ]; then
# readlink(1) is not available as standard on Solaris 10.
readLink=`which readlink`
if [ ! `expr "$readLink" : '\([^ ]*\)'` = "no" ]; then
if $darwin ; then
javaHome="`dirname \"$javaExecutable\"`"
javaExecutable="`cd \"$javaHome\" && pwd -P`/javac"
else
javaExecutable="`readlink -f \"$javaExecutable\"`"
fi
javaHome="`dirname \"$javaExecutable\"`"
javaHome=`expr "$javaHome" : '\(.*\)/bin'`
JAVA_HOME="$javaHome"
export JAVA_HOME
fi
fi
fi
if [ -z "$JAVACMD" ] ; then
if [ -n "$JAVA_HOME" ] ; then
if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
# IBM's JDK on AIX uses strange locations for the executables
JAVACMD="$JAVA_HOME/jre/sh/java"
else
JAVACMD="$JAVA_HOME/bin/java"
fi
else
JAVACMD="`which java`"
fi
fi
if [ ! -x "$JAVACMD" ] ; then
echo "Error: JAVA_HOME is not defined correctly." >&2
echo " We cannot execute $JAVACMD" >&2
exit 1
fi
if [ -z "$JAVA_HOME" ] ; then
echo "Warning: JAVA_HOME environment variable is not set."
fi
CLASSWORLDS_LAUNCHER=org.codehaus.plexus.classworlds.launcher.Launcher
# traverses directory structure from process work directory to filesystem root
# first directory with .mvn subdirectory is considered project base directory
find_maven_basedir() {
if [ -z "$1" ]
then
echo "Path not specified to find_maven_basedir"
return 1
fi
basedir="$1"
wdir="$1"
while [ "$wdir" != '/' ] ; do
if [ -d "$wdir"/.mvn ] ; then
basedir=$wdir
break
fi
# workaround for JBEAP-8937 (on Solaris 10/Sparc)
if [ -d "${wdir}" ]; then
wdir=`cd "$wdir/.."; pwd`
fi
# end of workaround
done
echo "${basedir}"
}
# concatenates all lines of a file
concat_lines() {
if [ -f "$1" ]; then
echo "$(tr -s '\n' ' ' < "$1")"
fi
}
BASE_DIR=`find_maven_basedir "$(pwd)"`
if [ -z "$BASE_DIR" ]; then
exit 1;
fi
##########################################################################################
# Extension to allow automatically downloading the maven-wrapper.jar from Maven-central
# This allows using the maven wrapper in projects that prohibit checking in binary data.
##########################################################################################
if [ -r "$BASE_DIR/.mvn/wrapper/maven-wrapper.jar" ]; then
if [ "$MVNW_VERBOSE" = true ]; then
echo "Found .mvn/wrapper/maven-wrapper.jar"
fi
else
if [ "$MVNW_VERBOSE" = true ]; then
echo "Couldn't find .mvn/wrapper/maven-wrapper.jar, downloading it ..."
fi
if [ -n "$MVNW_REPOURL" ]; then
jarUrl="$MVNW_REPOURL/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar"
else
jarUrl="https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar"
fi
while IFS="=" read key value; do
case "$key" in (wrapperUrl) jarUrl="$value"; break ;;
esac
done < "$BASE_DIR/.mvn/wrapper/maven-wrapper.properties"
if [ "$MVNW_VERBOSE" = true ]; then
echo "Downloading from: $jarUrl"
fi
wrapperJarPath="$BASE_DIR/.mvn/wrapper/maven-wrapper.jar"
if $cygwin; then
wrapperJarPath=`cygpath --path --windows "$wrapperJarPath"`
fi
if command -v wget > /dev/null; then
if [ "$MVNW_VERBOSE" = true ]; then
echo "Found wget ... using wget"
fi
if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then
wget "$jarUrl" -O "$wrapperJarPath"
else
wget --http-user=$MVNW_USERNAME --http-password=$MVNW_PASSWORD "$jarUrl" -O "$wrapperJarPath"
fi
elif command -v curl > /dev/null; then
if [ "$MVNW_VERBOSE" = true ]; then
echo "Found curl ... using curl"
fi
if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then
curl -o "$wrapperJarPath" "$jarUrl" -f
else
curl --user $MVNW_USERNAME:$MVNW_PASSWORD -o "$wrapperJarPath" "$jarUrl" -f
fi
else
if [ "$MVNW_VERBOSE" = true ]; then
echo "Falling back to using Java to download"
fi
javaClass="$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.java"
# For Cygwin, switch paths to Windows format before running javac
if $cygwin; then
javaClass=`cygpath --path --windows "$javaClass"`
fi
if [ -e "$javaClass" ]; then
if [ ! -e "$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.class" ]; then
if [ "$MVNW_VERBOSE" = true ]; then
echo " - Compiling MavenWrapperDownloader.java ..."
fi
# Compiling the Java class
("$JAVA_HOME/bin/javac" "$javaClass")
fi
if [ -e "$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.class" ]; then
# Running the downloader
if [ "$MVNW_VERBOSE" = true ]; then
echo " - Running MavenWrapperDownloader.java ..."
fi
("$JAVA_HOME/bin/java" -cp .mvn/wrapper MavenWrapperDownloader "$MAVEN_PROJECTBASEDIR")
fi
fi
fi
fi
##########################################################################################
# End of extension
##########################################################################################
export MAVEN_PROJECTBASEDIR=${MAVEN_BASEDIR:-"$BASE_DIR"}
if [ "$MVNW_VERBOSE" = true ]; then
echo $MAVEN_PROJECTBASEDIR
fi
MAVEN_OPTS="$(concat_lines "$MAVEN_PROJECTBASEDIR/.mvn/jvm.config") $MAVEN_OPTS"
# For Cygwin, switch paths to Windows format before running java
if $cygwin; then
[ -n "$M2_HOME" ] &&
M2_HOME=`cygpath --path --windows "$M2_HOME"`
[ -n "$JAVA_HOME" ] &&
JAVA_HOME=`cygpath --path --windows "$JAVA_HOME"`
[ -n "$CLASSPATH" ] &&
CLASSPATH=`cygpath --path --windows "$CLASSPATH"`
[ -n "$MAVEN_PROJECTBASEDIR" ] &&
MAVEN_PROJECTBASEDIR=`cygpath --path --windows "$MAVEN_PROJECTBASEDIR"`
fi
# Provide a "standardized" way to retrieve the CLI args that will
# work with both Windows and non-Windows executions.
MAVEN_CMD_LINE_ARGS="$MAVEN_CONFIG $@"
export MAVEN_CMD_LINE_ARGS
WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain
exec "$JAVACMD" \
$MAVEN_OPTS \
-classpath "$MAVEN_PROJECTBASEDIR/.mvn/wrapper/maven-wrapper.jar" \
"-Dmaven.home=${M2_HOME}" "-Dmaven.multiModuleProjectDirectory=${MAVEN_PROJECTBASEDIR}" \
${WRAPPER_LAUNCHER} $MAVEN_CONFIG "$@"

182
UB_OrderServiceProxy/mvnw.cmd

@ -1,182 +0,0 @@
@REM ----------------------------------------------------------------------------
@REM Licensed to the Apache Software Foundation (ASF) under one
@REM or more contributor license agreements. See the NOTICE file
@REM distributed with this work for additional information
@REM regarding copyright ownership. The ASF licenses this file
@REM to you under the Apache License, Version 2.0 (the
@REM "License"); you may not use this file except in compliance
@REM with the License. You may obtain a copy of the License at
@REM
@REM https://www.apache.org/licenses/LICENSE-2.0
@REM
@REM Unless required by applicable law or agreed to in writing,
@REM software distributed under the License is distributed on an
@REM "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
@REM KIND, either express or implied. See the License for the
@REM specific language governing permissions and limitations
@REM under the License.
@REM ----------------------------------------------------------------------------
@REM ----------------------------------------------------------------------------
@REM Maven Start Up Batch script
@REM
@REM Required ENV vars:
@REM JAVA_HOME - location of a JDK home dir
@REM
@REM Optional ENV vars
@REM M2_HOME - location of maven2's installed home dir
@REM MAVEN_BATCH_ECHO - set to 'on' to enable the echoing of the batch commands
@REM MAVEN_BATCH_PAUSE - set to 'on' to wait for a keystroke before ending
@REM MAVEN_OPTS - parameters passed to the Java VM when running Maven
@REM e.g. to debug Maven itself, use
@REM set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000
@REM MAVEN_SKIP_RC - flag to disable loading of mavenrc files
@REM ----------------------------------------------------------------------------
@REM Begin all REM lines with '@' in case MAVEN_BATCH_ECHO is 'on'
@echo off
@REM set title of command window
title %0
@REM enable echoing by setting MAVEN_BATCH_ECHO to 'on'
@if "%MAVEN_BATCH_ECHO%" == "on" echo %MAVEN_BATCH_ECHO%
@REM set %HOME% to equivalent of $HOME
if "%HOME%" == "" (set "HOME=%HOMEDRIVE%%HOMEPATH%")
@REM Execute a user defined script before this one
if not "%MAVEN_SKIP_RC%" == "" goto skipRcPre
@REM check for pre script, once with legacy .bat ending and once with .cmd ending
if exist "%HOME%\mavenrc_pre.bat" call "%HOME%\mavenrc_pre.bat"
if exist "%HOME%\mavenrc_pre.cmd" call "%HOME%\mavenrc_pre.cmd"
:skipRcPre
@setlocal
set ERROR_CODE=0
@REM To isolate internal variables from possible post scripts, we use another setlocal
@setlocal
@REM ==== START VALIDATION ====
if not "%JAVA_HOME%" == "" goto OkJHome
echo.
echo Error: JAVA_HOME not found in your environment. >&2
echo Please set the JAVA_HOME variable in your environment to match the >&2
echo location of your Java installation. >&2
echo.
goto error
:OkJHome
if exist "%JAVA_HOME%\bin\java.exe" goto init
echo.
echo Error: JAVA_HOME is set to an invalid directory. >&2
echo JAVA_HOME = "%JAVA_HOME%" >&2
echo Please set the JAVA_HOME variable in your environment to match the >&2
echo location of your Java installation. >&2
echo.
goto error
@REM ==== END VALIDATION ====
:init
@REM Find the project base dir, i.e. the directory that contains the folder ".mvn".
@REM Fallback to current working directory if not found.
set MAVEN_PROJECTBASEDIR=%MAVEN_BASEDIR%
IF NOT "%MAVEN_PROJECTBASEDIR%"=="" goto endDetectBaseDir
set EXEC_DIR=%CD%
set WDIR=%EXEC_DIR%
:findBaseDir
IF EXIST "%WDIR%"\.mvn goto baseDirFound
cd ..
IF "%WDIR%"=="%CD%" goto baseDirNotFound
set WDIR=%CD%
goto findBaseDir
:baseDirFound
set MAVEN_PROJECTBASEDIR=%WDIR%
cd "%EXEC_DIR%"
goto endDetectBaseDir
:baseDirNotFound
set MAVEN_PROJECTBASEDIR=%EXEC_DIR%
cd "%EXEC_DIR%"
:endDetectBaseDir
IF NOT EXIST "%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config" goto endReadAdditionalConfig
@setlocal EnableExtensions EnableDelayedExpansion
for /F "usebackq delims=" %%a in ("%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config") do set JVM_CONFIG_MAVEN_PROPS=!JVM_CONFIG_MAVEN_PROPS! %%a
@endlocal & set JVM_CONFIG_MAVEN_PROPS=%JVM_CONFIG_MAVEN_PROPS%
:endReadAdditionalConfig
SET MAVEN_JAVA_EXE="%JAVA_HOME%\bin\java.exe"
set WRAPPER_JAR="%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.jar"
set WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain
set DOWNLOAD_URL="https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar"
FOR /F "tokens=1,2 delims==" %%A IN ("%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.properties") DO (
IF "%%A"=="wrapperUrl" SET DOWNLOAD_URL=%%B
)
@REM Extension to allow automatically downloading the maven-wrapper.jar from Maven-central
@REM This allows using the maven wrapper in projects that prohibit checking in binary data.
if exist %WRAPPER_JAR% (
if "%MVNW_VERBOSE%" == "true" (
echo Found %WRAPPER_JAR%
)
) else (
if not "%MVNW_REPOURL%" == "" (
SET DOWNLOAD_URL="%MVNW_REPOURL%/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar"
)
if "%MVNW_VERBOSE%" == "true" (
echo Couldn't find %WRAPPER_JAR%, downloading it ...
echo Downloading from: %DOWNLOAD_URL%
)
powershell -Command "&{"^
"$webclient = new-object System.Net.WebClient;"^
"if (-not ([string]::IsNullOrEmpty('%MVNW_USERNAME%') -and [string]::IsNullOrEmpty('%MVNW_PASSWORD%'))) {"^
"$webclient.Credentials = new-object System.Net.NetworkCredential('%MVNW_USERNAME%', '%MVNW_PASSWORD%');"^
"}"^
"[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; $webclient.DownloadFile('%DOWNLOAD_URL%', '%WRAPPER_JAR%')"^
"}"
if "%MVNW_VERBOSE%" == "true" (
echo Finished downloading %WRAPPER_JAR%
)
)
@REM End of extension
@REM Provide a "standardized" way to retrieve the CLI args that will
@REM work with both Windows and non-Windows executions.
set MAVEN_CMD_LINE_ARGS=%*
%MAVEN_JAVA_EXE% %JVM_CONFIG_MAVEN_PROPS% %MAVEN_OPTS% %MAVEN_DEBUG_OPTS% -classpath %WRAPPER_JAR% "-Dmaven.multiModuleProjectDirectory=%MAVEN_PROJECTBASEDIR%" %WRAPPER_LAUNCHER% %MAVEN_CONFIG% %*
if ERRORLEVEL 1 goto error
goto end
:error
set ERROR_CODE=1
:end
@endlocal & set ERROR_CODE=%ERROR_CODE%
if not "%MAVEN_SKIP_RC%" == "" goto skipRcPost
@REM check for post script, once with legacy .bat ending and once with .cmd ending
if exist "%HOME%\mavenrc_post.bat" call "%HOME%\mavenrc_post.bat"
if exist "%HOME%\mavenrc_post.cmd" call "%HOME%\mavenrc_post.cmd"
:skipRcPost
@REM pause the script if MAVEN_BATCH_PAUSE is set to 'on'
if "%MAVEN_BATCH_PAUSE%" == "on" pause
if "%MAVEN_TERMINATE_CMD%" == "on" exit %ERROR_CODE%
exit /B %ERROR_CODE%

56
UB_OrderServiceProxy/pom.xml

@ -1,56 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.5.4</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<groupId>com.example</groupId>
<artifactId>UB_OrderServiceProxy</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>UB_OrderServiceProxy</name>
<description>UrbanBazaar - Online Grocery Shop</description>
<properties>
<java.version>1.8</java.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<scope>runtime</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>

13
UB_OrderServiceProxy/src/main/java/com/example/urbanbazaar/UbOrderServiceProxyApplication.java

@ -1,13 +0,0 @@
package com.example.urbanbazaar;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class UbOrderServiceProxyApplication {
public static void main(String[] args) {
SpringApplication.run(UbOrderServiceProxyApplication.class, args);
}
}

68
UB_OrderServiceProxy/src/main/java/com/example/urbanbazaar/controller/OrderController.java

@ -1,68 +0,0 @@
package com.example.urbanbazaar.controller;
import java.util.List;
import java.util.NoSuchElementException;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RestController;
import com.example.urbanbazaar.model.Orders;
import com.example.urbanbazaar.repository.OrderRepository;
@RestController
public class OrderController {
@Autowired
private OrderRepository repo;
@PostMapping("/addOrder")
public void addOrders( @RequestBody Orders order) {
repo.save(order);
}
@GetMapping("/findOrder/{id}")
public ResponseEntity<Orders> findOrder(@PathVariable Integer id) {
try {
Orders order = repo.findById(id).get();
return new ResponseEntity<Orders>(order,HttpStatus.OK);
} catch (NoSuchElementException e) {
return new ResponseEntity<Orders>(HttpStatus.NOT_FOUND);
}
}
@GetMapping("/findOrdersByUser/{id}")
public ResponseEntity<List<Orders>> findOrderByUser(@PathVariable Integer id) {
try {
List<Orders> orders = repo.findByorderuserid(id);
return new ResponseEntity<List<Orders>>(orders, HttpStatus.OK);
} catch (NoSuchElementException e) {
return new ResponseEntity<List<Orders>>(HttpStatus.NOT_FOUND);
}
}
@GetMapping("/trackOrder/{trackid}")
public ResponseEntity<Orders> searchOrderByTrackingNumber(@PathVariable String trackid)
{
try {
Orders order = repo.findByTrackId(trackid);
return new ResponseEntity<Orders>(order,HttpStatus.OK);
} catch (NoSuchElementException e) {
return new ResponseEntity<Orders>(HttpStatus.NOT_FOUND);
}
}
@GetMapping("/showAllOrders")
public List<Orders> showAllOrders()
{
return repo.findAll();
}
}

186
UB_OrderServiceProxy/src/main/java/com/example/urbanbazaar/model/Orders.java

@ -1,186 +0,0 @@
package com.example.urbanbazaar.model;
import java.sql.Date;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.Table;
@Entity
@Table(name = "orders")
public class Orders {
@Id
@GeneratedValue
private int orderid;
private int orderuserid;
private float orderamount;
private String ordershipaddress;
private String ordershipaddress2;
private String ordercity;
private String orderzip;
private String orderstate;
private String ordercountry;
private String orderphone;
private float ordershippingcost;
private float ordertax;
private String orderemail;
private Date orderdate;
private String ordershipped;
private String ordertrackingnumber;
public int getOrderid() {
return orderid;
}
public void setOrderid(int orderid) {
this.orderid = orderid;
}
public int getOrderuserid() {
return orderuserid;
}
public void setOrderuserid(int orderuserid) {
this.orderuserid = orderuserid;
}
public float getOrderamount() {
return orderamount;
}
public void setOrderamount(float orderamount) {
this.orderamount = orderamount;
}
public String getOrdershipaddress() {
return ordershipaddress;
}
public void setOrdershipaddress(String ordershipaddress) {
this.ordershipaddress = ordershipaddress;
}
public String getOrdershipaddress2() {
return ordershipaddress2;
}
public void setOrdershipaddress2(String ordershipaddress2) {
this.ordershipaddress2 = ordershipaddress2;
}
public String getOrdercity() {
return ordercity;
}
public void setOrdercity(String ordercity) {
this.ordercity = ordercity;
}
public String getOrderzip() {
return orderzip;
}
public void setOrderzip(String orderzip) {
this.orderzip = orderzip;
}
public String getOrderstate() {
return orderstate;
}
public void setOrderstate(String orderstate) {
this.orderstate = orderstate;
}
public String getOrdercountry() {
return ordercountry;
}
public void setOrdercountry(String ordercountry) {
this.ordercountry = ordercountry;
}
public String getOrderphone() {
return orderphone;
}
public void setOrderphone(String orderphone) {
this.orderphone = orderphone;
}
public float getOrdershippingcost() {
return ordershippingcost;
}
public void setOrdershippingcost(float ordershippingcost) {
this.ordershippingcost = ordershippingcost;
}
public float getOrdertax() {
return ordertax;
}
public void setOrdertax(float ordertax) {
this.ordertax = ordertax;
}
public String getOrderemail() {
return orderemail;
}
public void setOrderemail(String orderemail) {
this.orderemail = orderemail;
}
public Date getOrderdate() {
return orderdate;
}
public void setOrderdate(Date orderdate) {
this.orderdate = orderdate;
}
public String getOrdershipped() {
return ordershipped;
}
public void setOrdershipped(String ordershipped) {
this.ordershipped = ordershipped;
}
public String getOrdertrackingnumber() {
return ordertrackingnumber;
}
public void setOrdertrackingnumber(String ordertrackingnumber) {
this.ordertrackingnumber = ordertrackingnumber;
}
public Orders(int orderid, int orderuserid, float orderamount, String ordershipaddress, String ordershipaddress2,
String ordercity, String orderzip, String orderstate, String ordercountry, String orderphone,
float ordershippingcost, float ordertax, String orderemail, Date orderdate, String ordershipped,
String ordertrackingnumber) {
this.orderid = orderid;
this.orderuserid = orderuserid;
this.orderamount = orderamount;
this.ordershipaddress = ordershipaddress;
this.ordershipaddress2 = ordershipaddress2;
this.ordercity = ordercity;
this.orderzip = orderzip;
this.orderstate = orderstate;
this.ordercountry = ordercountry;
this.orderphone = orderphone;
this.ordershippingcost = ordershippingcost;
this.ordertax = ordertax;
this.orderemail = orderemail;
this.orderdate = orderdate;
this.ordershipped = ordershipped;
this.ordertrackingnumber = ordertrackingnumber;
}
public Orders() {
}
}

17
UB_OrderServiceProxy/src/main/java/com/example/urbanbazaar/repository/OrderRepository.java

@ -1,17 +0,0 @@
package com.example.urbanbazaar.repository;
import java.util.List;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.query.Param;
import com.example.urbanbazaar.model.Orders;
public interface OrderRepository extends JpaRepository<Orders, Integer> {
@Query("SELECT o FROM Orders o WHERE o.ordertrackingnumber=:id")
public Orders findByTrackId(@Param("id") String id);
public List<Orders> findByorderuserid(int id);
}

11
UB_OrderServiceProxy/src/main/resources/application.properties

@ -1,11 +0,0 @@
server.port=8009
spring.datasource.url=jdbc:mysql://10.3.117.21:3306/grocery_db?createDatabaseIfNotExist=true
spring.datasource.username=testuser
spring.datasource.password=Password123
server.servlet.context-path=/orders
spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.MySQL5Dialect
spring.jpa.hibernate.ddl-auto=update
spring.jackson.serialization.fail-on-empty-beans=false

13
UB_OrderServiceProxy/src/test/java/com/example/urbanbazaar/UbOrderServiceProxyApplicationTests.java

@ -1,13 +0,0 @@
package com.example.urbanbazaar;
import org.junit.jupiter.api.Test;
import org.springframework.boot.test.context.SpringBootTest;
@SpringBootTest
class UbOrderServiceProxyApplicationTests {
@Test
void contextLoads() {
}
}

181
grocery_db_tables.sql

@ -1,181 +0,0 @@
drop database if exists grocery_db;
create database grocery_db;
use grocery_db;
-- Users Table Schema
CREATE TABLE `users` (
`UserID` int(11) NOT NULL AUTO_INCREMENT,
`UserFirstName` varchar(20) DEFAULT NULL,
`UserLastName` varchar(20) DEFAULT NULL,
`UserEmail` varchar(20) DEFAULT NULL,
`UserPassword` varchar(20) DEFAULT NULL,
`UserCity` varchar(30) DEFAULT NULL,
`UserState` varchar(20) DEFAULT NULL,
`UserZip` varchar(6) DEFAULT NULL,
`UserPhone` varchar(10) DEFAULT NULL,
`UserAddress` varchar(80) DEFAULT NULL,
`UserAddress2` varchar(80) DEFAULT NULL,
PRIMARY KEY (`UserID`)
);
ALTER TABLE users AUTO_INCREMENT = 100;
insert into users values(
100, "Rajesh", "Kumar",
"shawn@mail.com", "shawn@mail.com",
"Chennai", "Tamil Nadu", "600040",
"5000500050", "Block B, Abirami Apartments",
"Anna Nagar"
);
insert into users values(
101, "Vignesh", "Shivan",
"vignesh@mail.com", "vignesh@mail.com",
"Chennai", "Tamil Nadu", "600030",
"5000500060", "Block A, Harmony Melody",
"Shenoy Nagar"
);
select * from users;
-----------------------------------------------------------------------------------------
-- Product-Categories Table Schema
CREATE TABLE IF NOT EXISTS `productcategories` (
`CategoryID` int(11) NOT NULL AUTO_INCREMENT,
`CategoryName` varchar(50) NOT NULL,
PRIMARY KEY (`CategoryID`)
);
INSERT INTO `productcategories` (`CategoryID`, `CategoryName`) VALUES
(1, 'Snacks'),
(2, 'Vegetables'),
(3, 'Fruits'),
(4, 'Beverages'),
(5, 'Bakery Products'),
(6, 'Fist-Meat');
select * from productcategories;
-----------------------------------------------------------------------------------------
-- Product Table Schema
create table Product(
`ProductID` int(12) NOT NULL AUTO_INCREMENT,
`ProductName` varchar(100) NOT NULL,
`ProductPrice` float NOT NULL,
`ProductWeight` float NOT NULL,
`ProductShortDesc` varchar(1000) NOT NULL,
`ProductLongDesc` text NOT NULL,
`ProductImage` varchar(100) NOT NULL,
`ProductCategoryID` int(11) DEFAULT NULL,
PRIMARY KEY (`ProductID`),
FOREIGN KEY (`ProductCategoryID`) REFERENCES productcategories(`CategoryID`)
);
ALTER TABLE Product AUTO_INCREMENT = 1000;
-- Vegetables
insert into product values (1000, "Carrot", 55, 0.5,
"Fresh Carrot - Ooty",
"A popular sweet-tasting root vegetable, Carrots provide the highest content of vitamin A of all the vegetables.",
"https://www.bigbasket.com/media/uploads/p/l/10000271_13-fresho-carrot-ooty.jpg", 2);
insert into product values (1001, "Potato", 30, 1,
"Fresh Potato - Organically Grown",
"Potatoes are nutrient-dense, non-fattening and have reasonable amount of calories. Consumption of potatoes helps to maintain the blood glucose level and keeps the brain alert and active.",
"https://www.bigbasket.com/media/uploads/p/l/10000159_25-fresho-potato.jpg", 2);
insert into product values (1002, "Cauliflower", 60, 0.45,
"Fresh Cauliflower",
"Cauliflower is made up of tightly bound clusters of soft, crumbly, sweet cauliflower florets that form a dense head.",
"https://www.bigbasket.com/media/uploads/p/l/10000074_19-fresho-cauliflower.jpg", 2);
-- Fruits
insert into product values (1003, "Orange", 65, 1,
"Fresh Orange",
"Navel oranges are very sugary and juicy and considered to be the world's finest orange for fresh consumption because they are very sweet, naturally juice, seedless and peels and segments very easily.",
"https://www.bigbasket.com/media/uploads/p/l/20000910_12-fresho-orange-imported.jpg", 3);
insert into product values (1004, "Banana - Yelakki", 70, 1,
"Fresh Banana - Yelakki",
"Yelakki bananas are small size, they are naturally flavoured, aromatic and sweeter compared to regular bananas.",
"https://www.bigbasket.com/media/uploads/p/l/10000031_21-fresho-banana-yelakki.jpg", 3);
-- Snacks
insert into product values (1005, "Britannia Good Day Cashew Cookies", 90, 0.120,
"Britannia Good Day Cashew Cookies",
"Britannia Good Day Cashew Cookies are delicious crunchy cookies made with rich cashews.",
"https://www.bigbasket.com/media/uploads/p/l/40083744_5-britannia-good-day-cashew-cookies.jpg", 1);
insert into product values (1006, "Haldirams Namkeen - Bhujia Sev", 200, 1,
"Haldirams Namkeen - Bhujia Sev",
"Haldirams Bhujia Sev is a authentic namkeen. This classic snack is made with chickpea flour and some spices.",
"https://www.bigbasket.com/media/uploads/p/l/100022552_1-haldirams-namkeen-bhujia-sev.jpg", 1);
-- Fist-Meat
insert into product values (1007, "Eggs - Regular (12)", 76, 0.150,
"Fresh Eggs - Regular, 2x6 pcs Multipack ",
"Fresh Table eggs are hygienically processed and securely filled for keeping these free from any contamination and impurity.",
"https://www.bigbasket.com/media/uploads/p/l/40083744_5-britannia-good-day-cashew-cookies.jpg", 6);
select * from product;
-----------------------------------------------------------------------------------------
-- Orders Table Schema
CREATE TABLE IF NOT EXISTS `orders` (
`OrderID` int(11) NOT NULL AUTO_INCREMENT,
`UserID` int(11) NOT NULL,
`OrderAmount` float NOT NULL,
`OrderShippingCost` float NOT NULL,
`OrderDate` date not null,
`OrderShipped` bool not null default false,
`OrderTrackingNumber` varchar(80) DEFAULT NULL,
PRIMARY KEY (`OrderID`)
);
ALTER TABLE orders AUTO_INCREMENT = 1000;
SELECT * FROM orders;
-----------------------------------------------------------------------------------------
-- Members Table Schema
create table `members`(
`MemberID` int(11) not null AUTO_INCREMENT,
`UserID` int(11) NOT NULL,
`MemberName` varchar(20) not null,
`MemberDoorNumber` int(4) not null,
`TotalItems` int(4) not null default 0,
`TotalPrice` int(6) not null default 0,
`MemberPhone` varchar(10) not null,
PRIMARY KEY (`MemberID`),
FOREIGN KEY (`UserID`) REFERENCES users(`UserID`)
);
INSERT INTO members VALUES(1, 100, "Abhis", 501, 0, 0, "1234512345");
INSERT INTO members VALUES(2, 100, "Meera", 502, 0, 0, "1234523456");
INSERT INTO members VALUES(3, 100, "Shyam", 503, 0, 0, "1234598745");
select * from members;
-----------------------------------------------------------------------------------------
-- Cart Table Schema
CREATE TABLE IF NOT EXISTS `cart` (
`CartID` int NOT NULL AUTO_INCREMENT,
`ProductID` int(12) NOT NULL,
`UserID` int NOT NULL,
`ProductCategoryID` int(11) NOT NULL,
PRIMARY KEY (`CartID`),
FOREIGN KEY (`ProductCategoryID`) REFERENCES productcategories(`CategoryID`),
FOREIGN KEY (`UserID`) REFERENCES users(`UserID`)
);
ALTER TABLE cart AUTO_INCREMENT = 1000;
insert into cart values (1001, 1002, 101, 2);
select * from cart;
-----------------------------------------------------------------------------------------
drop user if exists 'testuser';
CREATE USER 'testuser' IDENTIFIED BY 'Password123';
grant all privileges on grocery_db.* to 'testuser'@'%' with grant option;
FLUSH PRIVILEGES;

150
grosery_db.sql

@ -0,0 +1,150 @@
drop database if exists grocery_db;
create database grocery_db;
use grocery_db;
-- Product-Categories Table Schema
CREATE TABLE IF NOT EXISTS `productcategories` (
`categoryid` int(11) NOT NULL AUTO_INCREMENT,
`categoryname` varchar(50) NOT NULL,
PRIMARY KEY (`categoryid`)
);
INSERT INTO `productcategories` (`categoryid`, `categoryname`) VALUES
(1, 'Snacks'),
(2, 'Vegetables'),
(3, 'Fruits'),
(4, 'Beverages'),
(5, 'Bakery Products'),
(6, 'Fist-Meat');
select * from productcategories;
-- Users Table Schema
CREATE TABLE `users` (
`userid` int(11) NOT NULL AUTO_INCREMENT,
`userfirstname` varchar(50) DEFAULT NULL,
`userlastname` varchar(50) DEFAULT NULL,
`useremail` varchar(50) DEFAULT NULL,
`userpassword` varchar(50) DEFAULT NULL,
`usercity` varchar(50) DEFAULT NULL,
`userstate` varchar(20) DEFAULT NULL,
`userzip` varchar(12) DEFAULT NULL,
`userphone` varchar(20) DEFAULT NULL,
`useraddress` varchar(100) DEFAULT NULL,
`useraddress2` varchar(50) DEFAULT NULL,
PRIMARY KEY (`userid`)
);
ALTER TABLE users AUTO_INCREMENT = 100;
insert into users values(
100, "Rajesh", "Kumar",
"shawn@mail.com", "shawn@mail.com",
"Chennai", "Tamil Nadu", "600040",
"5000500050", "Block B, Abirami Apartments",
"Anna Nagar"
);
insert into users values(
101, "Vignesh", "Shivan",
"vignesh@mail.com", "vignesh@mail.com",
"Chennai", "Tamil Nadu", "600030",
"5000500060", "Block A, Harmony Melody",
"Shenoy Nagar"
);
select * from users;
create table Product(
`productid` int(12) NOT NULL AUTO_INCREMENT,
`productname` varchar(100) NOT NULL,
`productprice` float NOT NULL,
`productimage` varchar(100) NOT NULL,
`productcategoryid` int(11) not NULL,
PRIMARY KEY (`productid`),
FOREIGN KEY (`productcategoryid`) REFERENCES productcategories(`categoryid`)
);
ALTER TABLE Product AUTO_INCREMENT = 1000;
-- Vegetables
insert into product values (1000, "Carrot", 55,
"https://www.bigbasket.com/media/uploads/p/l/10000271_13-fresho-carrot-ooty.jpg", 2);
insert into product values (1001, "Potato", 30,
"https://www.bigbasket.com/media/uploads/p/l/10000159_25-fresho-potato.jpg", 2);
insert into product values (1002, "Cauliflower", 60,
"https://www.bigbasket.com/media/uploads/p/l/10000074_19-fresho-cauliflower.jpg", 2);
-- Fruits
insert into product values (1003, "Orange", 65,
"https://www.bigbasket.com/media/uploads/p/l/20000910_12-fresho-orange-imported.jpg", 3);
insert into product values (1004, "Banana - Yelakki", 70,
"https://www.bigbasket.com/media/uploads/p/l/10000031_21-fresho-banana-yelakki.jpg", 3);
-- Snacks
insert into product values (1005, "Britannia Good Day Cashew Cookies", 90,
"https://www.bigbasket.com/media/uploads/p/l/40083744_5-britannia-good-day-cashew-cookies.jpg", 1);
insert into product values (1006, "Haldirams Namkeen - Bhujia Sev", 200,
"https://www.bigbasket.com/media/uploads/p/l/100022552_1-haldirams-namkeen-bhujia-sev.jpg", 1);
-- Fist-Meat
insert into product values (1007, "Eggs - Regular (12)", 76,
"https://www.bigbasket.com/media/uploads/p/l/40083744_5-britannia-good-day-cashew-cookies.jpg", 6);
select * from product;
-- Orders Table Schema
CREATE TABLE IF NOT EXISTS `orders` (
`orderid` int(11) NOT NULL AUTO_INCREMENT,
`userid` int(11) NOT NULL,
`orderamount` float NOT NULL,
`ordershippingcost` float NOT NULL,
`orderdate` date not null,
`orderstatus` varchar(100) not null,
`ordertrackingnumber` varchar(80) DEFAULT NULL,
PRIMARY KEY (`orderiD`),
FOREIGN KEY (`userid`) REFERENCES users(`userid`)
);
ALTER TABLE orders AUTO_INCREMENT = 1000;
-- insert into orders values(1000,1,12.5,'indra nagar','panchshill nagar','bhilai','c.g.','490025','india','7896545210',25.3,56.2,'g@gmail.com','2021-09-10','done','456');
-- insert into orders values(1001,1,12.5,'indra nagar','panchshill nagar','bhilai','c.g.','490025','india','7896545210',25.3,56.2,'g@gmail.com','2021-09-10','done','457');
SELECT * FROM orders;
-- Members Table Schema
create table `members`(
`userid` int(11) NOT NULL,
`memberid` int(11) not null AUTO_INCREMENT,
`membername` varchar(20) not null,
`memberdoornumber` int(4) not null,
`totalitems` int(3) not null default 0,
`memberphone` varchar(15) not null,
`membertotalamount` float not null default 0,
PRIMARY KEY (`memberid`),
FOREIGN KEY (`userid`) REFERENCES users(`userid`)
);
INSERT INTO members VALUES(100, 1, "Abhishek", 501,0,"1234512345", 0);
INSERT INTO members VALUES(100, 2, "Meera", 502,5,"12345234567", 1200);
INSERT INTO members VALUES(100, 3, "Shyam", 503,10,"1234598745", 800);
select * from members;
CREATE TABLE IF NOT EXISTS `cart`(
`cartid` int (12) not null AUTO_INCREMENT,
`productid` int(12) NOT NULL,
`userid` int(12) not null,
`productname` varchar(100) NOT NULL,
`productprice` float NOT NULL,
`productcategoryid` int(11) not NULL,
PRIMARY KEY (`cartid`),
FOREIGN KEY (`productid`) REFERENCES product(`productid`),
FOREIGN KEY (`userid`) REFERENCES users(`userid`)
);
select * from cart;
drop user if exists 'testuser';
CREATE USER 'testuser' IDENTIFIED BY 'Password123';
grant all privileges on grocery_db.* to 'testuser'@'%' with grant option;
FLUSH PRIVILEGES;
Loading…
Cancel
Save