Task: Add sample client sdk
This commit is contained in:
20
lib/sdk/ClientSDK.dart
Normal file
20
lib/sdk/ClientSDK.dart
Normal file
@@ -0,0 +1,20 @@
|
||||
import 'package:sample_dart_dsdk/sdk/services/CategoryService.dart';
|
||||
import 'package:sample_dart_dsdk/sdk/services/ProductService.dart';
|
||||
|
||||
class ClientSDK {
|
||||
static var _instance;
|
||||
|
||||
static ClientSDK getInstance() {
|
||||
if (_instance == null) {
|
||||
ClientSDK();
|
||||
}
|
||||
|
||||
return _instance;
|
||||
}
|
||||
|
||||
ProductService getProductService() {
|
||||
return ProductService();
|
||||
}
|
||||
|
||||
CategoryService getCategoryService() => CategoryService();
|
||||
}
|
||||
6
lib/sdk/models/CategoryModel.dart
Normal file
6
lib/sdk/models/CategoryModel.dart
Normal file
@@ -0,0 +1,6 @@
|
||||
class Category {
|
||||
int id;
|
||||
String name;
|
||||
|
||||
Category(this.id, this.name);
|
||||
}
|
||||
20
lib/sdk/models/ProductModel.dart
Normal file
20
lib/sdk/models/ProductModel.dart
Normal file
@@ -0,0 +1,20 @@
|
||||
class Product {
|
||||
int id;
|
||||
String name;
|
||||
double price;
|
||||
|
||||
Product(this.id, this.name, this.price);
|
||||
|
||||
static Product fromJson(dynamic json) => Product(
|
||||
json['id'],
|
||||
json['name'],
|
||||
json['price'],
|
||||
);
|
||||
}
|
||||
|
||||
class ProductRequest {
|
||||
String name;
|
||||
double price;
|
||||
|
||||
ProductRequest(this.name, this.price);
|
||||
}
|
||||
7
lib/sdk/services/CategoryService.dart
Normal file
7
lib/sdk/services/CategoryService.dart
Normal file
@@ -0,0 +1,7 @@
|
||||
import 'package:sample_dart_dsdk/sdk/models/CategoryModel.dart';
|
||||
|
||||
class CategoryService {
|
||||
List<Category> getAll() {
|
||||
return List.empty();
|
||||
}
|
||||
}
|
||||
15
lib/sdk/services/ProductService.dart
Normal file
15
lib/sdk/services/ProductService.dart
Normal file
@@ -0,0 +1,15 @@
|
||||
import 'package:sample_dart_dsdk/sdk/models/ProductModel.dart';
|
||||
|
||||
class ProductService {
|
||||
List<Product> getAll() {
|
||||
return List.empty();
|
||||
}
|
||||
|
||||
Product getOne() {
|
||||
return Product.fromJson(null);
|
||||
}
|
||||
|
||||
Product create() {
|
||||
return Product.fromJson(null);
|
||||
}
|
||||
}
|
||||
13
lib/test.dart
Normal file
13
lib/test.dart
Normal file
@@ -0,0 +1,13 @@
|
||||
import 'package:sample_dart_dsdk/sdk/ClientSDK.dart';
|
||||
|
||||
void main(List<String> args) {
|
||||
var client = ClientSDK.getInstance();
|
||||
var productService = client.getProductService();
|
||||
var products = productService.getAll();
|
||||
|
||||
print(products);
|
||||
|
||||
var categoryService = client.getCategoryService();
|
||||
var categories = categoryService.getAll();
|
||||
print(categories);
|
||||
}
|
||||
Reference in New Issue
Block a user