Skip to content

Commit

Permalink
register nft server
Browse files Browse the repository at this point in the history
  • Loading branch information
jekabolt committed Jul 2, 2022
1 parent e8ee999 commit fc49b6f
Show file tree
Hide file tree
Showing 8 changed files with 86 additions and 85 deletions.
11 changes: 6 additions & 5 deletions art-admin/app/server.go
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ import (
)

type Server struct {
gc *grpc.Server
gs *grpc.Server
c *Config
}

Expand All @@ -41,7 +41,7 @@ type Config struct {

func (c *Config) Init() *Server {
return &Server{
gc: grpc.NewServer(),
gs: grpc.NewServer(),
c: c,
}
}
Expand All @@ -52,13 +52,14 @@ func (s *Server) Start(ctx context.Context,
nftServer *nft.Server,
) (err error) {

s.gc = grpc.NewServer()
pb_auth.RegisterAuthServer(s.gc, authServer)
s.gs = grpc.NewServer()
pb_auth.RegisterAuthServer(s.gs, authServer)
pb_nft.RegisterNftServer(s.gs, nftServer)

var clientHTTPHandler http.Handler
handler := http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
if r.ProtoMajor == 2 && strings.Contains(r.Header.Get("Content-Type"), "application/grpc") {
s.gc.ServeHTTP(w, r)
s.gs.ServeHTTP(w, r)
} else {
if clientHTTPHandler == nil {
w.WriteHeader(http.StatusNotImplemented)
Expand Down
2 changes: 1 addition & 1 deletion art-admin/app/static/swagger/api.swagger.json
Original file line number Diff line number Diff line change
@@ -1 +1 @@
{"swagger":"2.0","basePath":"","info":{"title":"","version":"1.0.0","description":""},"schemes":null,"consumes":["application/json"],"produces":["application/json"],"paths":{"/api/auth/login":{"post":{"operationId":"Login","parameters":[{"in":"body","name":"body","required":true,"schema":{"$ref":"#/definitions/authLoginRequest"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/authLoginResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/rpcStatus"}}},"tags":["Auth"]}},"/api/nft":{"post":{"operationId":"UpdateNFTOffchainUrl","parameters":[{"in":"body","name":"body","required":true,"schema":{"$ref":"#/definitions/nftUpdateNFTOffchainUrlRequest"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/nftNFTMintRequestWithStatus"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/rpcStatus"}}},"tags":["Nft"]}},"/api/nft/burn":{"get":{"operationId":"GetAllBurned","responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/nftBurnList"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/rpcStatus"}}},"tags":["Nft"]},"post":{"operationId":"Burn","parameters":[{"in":"body","name":"body","required":true,"schema":{"$ref":"#/definitions/nftBurnRequest"}}],"responses":{"200":{"description":"A successful response.","schema":{"properties":{}}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/rpcStatus"}}},"tags":["Nft"]}},"/api/nft/burn/error":{"get":{"operationId":"GetAllBurnedError","responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/nftBurnList"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/rpcStatus"}}},"tags":["Nft"]}},"/api/nft/burn/pending":{"get":{"operationId":"GetAllBurnedPending","responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/nftBurnList"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/rpcStatus"}}},"tags":["Nft"]}},"/api/nft/ipfs":{"post":{"operationId":"UploadIPFSMetadata","parameters":[{"in":"body","name":"body","required":true,"schema":{"properties":{}}}],"responses":{"200":{"description":"A successful response.","schema":{"properties":{}}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/rpcStatus"}}},"summary":"TODO: add rpc for getting metadata offchain url","tags":["Nft"]}},"/api/nft/offchain":{"post":{"operationId":"UploadOffchainMetadata","parameters":[{"in":"body","name":"body","required":true,"schema":{"properties":{}}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/nftMetadataOffchainUrl"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/rpcStatus"}}},"tags":["Nft"]}},"/api/nft/requests":{"get":{"operationId":"ListNFTMintRequests","responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/nftNFTMintRequestListArray"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/rpcStatus"}}},"tags":["Nft"]},"post":{"operationId":"UpsertNFTMintRequest","parameters":[{"in":"body","name":"body","required":true,"schema":{"$ref":"#/definitions/nftNFTMintRequestToUpload"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/nftNFTMintRequestWithStatus"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/rpcStatus"}}},"tags":["Nft"]}},"/api/nft/requests/{id}":{"delete":{"operationId":"DeleteNFTMintRequestById","parameters":[{"in":"path","name":"id","required":true,"type":"string"}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/nftDeleteStatus"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/rpcStatus"}}},"tags":["Nft"]}},"/api/nft/shipping/status":{"post":{"operationId":"UpdateBurnShippingStatus","parameters":[{"in":"body","name":"body","required":true,"schema":{"$ref":"#/definitions/nftShippingStatusUpdateRequest"}}],"responses":{"200":{"description":"A successful response.","schema":{"properties":{}}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/rpcStatus"}}},"tags":["Nft"]}},"/api/nft/{id}":{"delete":{"operationId":"DeleteNFOffchainUrl","parameters":[{"in":"path","name":"id","required":true,"type":"string"}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/nftNFTMintRequestWithStatus"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/rpcStatus"}}},"tags":["Nft"]}}},"definitions":{"authLoginRequest":{"properties":{"password":{"type":"string"}},"type":"object"},"authLoginResponse":{"properties":{"authToken":{"type":"string"}},"type":"object"},"nftBurnList":{"properties":{"data":{"items":{"$ref":"#/definitions/nftBurnShippingInfo"},"type":"array"}},"type":"object"},"nftBurnRequest":{"description":"Burn","properties":{"address":{"type":"string"},"mintSequenceNumber":{"format":"int64","type":"string"},"shipping":{"$ref":"#/definitions/nftShippingTo"},"txid":{"type":"string"}},"type":"object"},"nftBurnShippingInfo":{"properties":{"burn":{"$ref":"#/definitions/nftBurnRequest"},"id":{"format":"int64","type":"string"},"status":{"$ref":"#/definitions/nftShippingStatus"}},"type":"object"},"nftDeleteStatus":{"properties":{"message":{"type":"string"}},"type":"object"},"nftImageList":{"description":"image","properties":{"compressed":{"type":"string"},"fullSize":{"type":"string"}},"type":"object"},"nftImageToUpload":{"properties":{"raw":{"type":"string"}},"type":"object"},"nftMetadataOffchainUrl":{"description":"Upload offchain metadata _metadata.json","properties":{"Url":{"type":"string"}},"type":"object"},"nftNFTMintRequest":{"properties":{"TxHash":{"type":"string"},"description":{"type":"string"},"ethAddress":{"type":"string"},"id":{"format":"int64","type":"string"},"mintSequenceNumber":{"format":"int64","type":"string"}},"type":"object"},"nftNFTMintRequestListArray":{"properties":{"nftMintRequests":{"items":{"$ref":"#/definitions/nftNFTMintRequestWithStatus"},"type":"array"}},"type":"object"},"nftNFTMintRequestToUpload":{"properties":{"nftMintRequest":{"$ref":"#/definitions/nftNFTMintRequest"},"sampleImages":{"items":{"$ref":"#/definitions/nftImageToUpload"},"type":"array"}},"type":"object"},"nftNFTMintRequestWithStatus":{"properties":{"nftMintRequest":{"$ref":"#/definitions/nftNFTMintRequest"},"nftOffchainUrl":{"type":"string"},"sampleImages":{"items":{"$ref":"#/definitions/nftImageList"},"type":"array"},"status":{"type":"string"}},"type":"object"},"nftShippingStatus":{"properties":{"error":{"type":"string"},"success":{"type":"boolean"},"timeSent":{"format":"int64","type":"string"},"trackNumber":{"type":"string"}},"type":"object"},"nftShippingStatusUpdateRequest":{"properties":{"id":{"type":"string"},"status":{"$ref":"#/definitions/nftShippingStatus"}},"type":"object"},"nftShippingTo":{"properties":{"address":{"type":"string"},"city":{"type":"string"},"country":{"type":"string"},"email":{"type":"string"},"fullName":{"type":"string"},"zipCode":{"type":"string"}},"type":"object"},"nftUpdateNFTOffchainUrlRequest":{"description":"Update NFT offchain url","properties":{"id":{"type":"string"},"nftOffchainUrl":{"type":"string"}},"type":"object"},"protobufAny":{"additionalProperties":{},"properties":{"@type":{"type":"string"}},"type":"object"},"rpcStatus":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"$ref":"#/definitions/protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object"}}}
{"swagger":"2.0","basePath":"","info":{"title":"","version":"1.0.0","description":""},"schemes":null,"consumes":["application/json"],"produces":["application/json"],"paths":{"/api/auth/login":{"post":{"operationId":"Login","parameters":[{"in":"body","name":"body","required":true,"schema":{"$ref":"#/definitions/authLoginRequest"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/authLoginResponse"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/rpcStatus"}}},"tags":["Auth"]}},"/api/nft":{"post":{"operationId":"UpdateNFTOffchainUrl","parameters":[{"in":"body","name":"body","required":true,"schema":{"$ref":"#/definitions/nftUpdateNFTOffchainUrlRequest"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/nftNFTMintRequestWithStatus"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/rpcStatus"}}},"tags":["Nft"]}},"/api/nft/burn":{"get":{"operationId":"GetAllBurned","responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/nftBurnList"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/rpcStatus"}}},"tags":["Nft"]},"post":{"operationId":"Burn","parameters":[{"in":"body","name":"body","required":true,"schema":{"$ref":"#/definitions/nftBurnRequest"}}],"responses":{"200":{"description":"A successful response.","schema":{"properties":{}}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/rpcStatus"}}},"tags":["Nft"]}},"/api/nft/burn/error":{"get":{"operationId":"GetAllBurnedError","responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/nftBurnList"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/rpcStatus"}}},"tags":["Nft"]}},"/api/nft/burn/pending":{"get":{"operationId":"GetAllBurnedPending","responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/nftBurnList"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/rpcStatus"}}},"tags":["Nft"]}},"/api/nft/ipfs":{"post":{"operationId":"UploadIPFSMetadata","parameters":[{"in":"body","name":"body","required":true,"schema":{"properties":{}}}],"responses":{"200":{"description":"A successful response.","schema":{"properties":{}}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/rpcStatus"}}},"summary":"TODO: add rpc for getting metadata offchain url","tags":["Nft"]}},"/api/nft/offchain":{"post":{"operationId":"UploadOffchainMetadata","parameters":[{"in":"body","name":"body","required":true,"schema":{"properties":{}}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/nftMetadataOffchainUrl"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/rpcStatus"}}},"tags":["Nft"]}},"/api/nft/requests":{"get":{"operationId":"ListNFTMintRequests","responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/nftNFTMintRequestListArray"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/rpcStatus"}}},"tags":["Nft"]},"post":{"operationId":"UpsertNFTMintRequest","parameters":[{"in":"body","name":"body","required":true,"schema":{"$ref":"#/definitions/nftNFTMintRequestToUpload"}}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/nftNFTMintRequestWithStatus"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/rpcStatus"}}},"tags":["Nft"]}},"/api/nft/requests/{id}":{"delete":{"operationId":"DeleteNFTMintRequestById","parameters":[{"in":"path","name":"id","required":true,"type":"string"}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/nftDeleteStatus"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/rpcStatus"}}},"tags":["Nft"]}},"/api/nft/shipping/status":{"post":{"operationId":"UpdateBurnShippingStatus","parameters":[{"in":"body","name":"body","required":true,"schema":{"$ref":"#/definitions/nftShippingStatusUpdateRequest"}}],"responses":{"200":{"description":"A successful response.","schema":{"properties":{}}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/rpcStatus"}}},"tags":["Nft"]}},"/api/nft/{id}":{"delete":{"operationId":"DeleteNFTOffchainUrl","parameters":[{"in":"path","name":"id","required":true,"type":"string"}],"responses":{"200":{"description":"A successful response.","schema":{"$ref":"#/definitions/nftNFTMintRequestWithStatus"}},"default":{"description":"An unexpected error response.","schema":{"$ref":"#/definitions/rpcStatus"}}},"tags":["Nft"]}}},"definitions":{"authLoginRequest":{"properties":{"password":{"type":"string"}},"type":"object"},"authLoginResponse":{"properties":{"authToken":{"type":"string"}},"type":"object"},"nftBurnList":{"properties":{"data":{"items":{"$ref":"#/definitions/nftBurnShippingInfo"},"type":"array"}},"type":"object"},"nftBurnRequest":{"description":"Burn","properties":{"address":{"type":"string"},"mintSequenceNumber":{"format":"int64","type":"string"},"shipping":{"$ref":"#/definitions/nftShippingTo"},"txid":{"type":"string"}},"type":"object"},"nftBurnShippingInfo":{"properties":{"burn":{"$ref":"#/definitions/nftBurnRequest"},"id":{"format":"int64","type":"string"},"status":{"$ref":"#/definitions/nftShippingStatus"}},"type":"object"},"nftDeleteStatus":{"properties":{"message":{"type":"string"}},"type":"object"},"nftImageList":{"description":"image","properties":{"compressed":{"type":"string"},"fullSize":{"type":"string"}},"type":"object"},"nftImageToUpload":{"properties":{"raw":{"type":"string"}},"type":"object"},"nftMetadataOffchainUrl":{"description":"Upload offchain metadata _metadata.json","properties":{"Url":{"type":"string"}},"type":"object"},"nftNFTMintRequest":{"properties":{"TxHash":{"type":"string"},"description":{"type":"string"},"ethAddress":{"type":"string"},"id":{"format":"int64","type":"string"},"mintSequenceNumber":{"format":"int64","type":"string"}},"type":"object"},"nftNFTMintRequestListArray":{"properties":{"nftMintRequests":{"items":{"$ref":"#/definitions/nftNFTMintRequestWithStatus"},"type":"array"}},"type":"object"},"nftNFTMintRequestToUpload":{"properties":{"nftMintRequest":{"$ref":"#/definitions/nftNFTMintRequest"},"sampleImages":{"items":{"$ref":"#/definitions/nftImageToUpload"},"type":"array"}},"type":"object"},"nftNFTMintRequestWithStatus":{"properties":{"nftMintRequest":{"$ref":"#/definitions/nftNFTMintRequest"},"nftOffchainUrl":{"type":"string"},"sampleImages":{"items":{"$ref":"#/definitions/nftImageList"},"type":"array"},"status":{"type":"string"}},"type":"object"},"nftShippingStatus":{"properties":{"error":{"type":"string"},"success":{"type":"boolean"},"timeSent":{"format":"int64","type":"string"},"trackNumber":{"type":"string"}},"type":"object"},"nftShippingStatusUpdateRequest":{"properties":{"id":{"type":"string"},"status":{"$ref":"#/definitions/nftShippingStatus"}},"type":"object"},"nftShippingTo":{"properties":{"address":{"type":"string"},"city":{"type":"string"},"country":{"type":"string"},"email":{"type":"string"},"fullName":{"type":"string"},"zipCode":{"type":"string"}},"type":"object"},"nftUpdateNFTOffchainUrlRequest":{"description":"Update NFT offchain url","properties":{"id":{"type":"string"},"nftOffchainUrl":{"type":"string"}},"type":"object"},"protobufAny":{"additionalProperties":{},"properties":{"@type":{"type":"string"}},"type":"object"},"rpcStatus":{"properties":{"code":{"format":"int32","type":"integer"},"details":{"items":{"$ref":"#/definitions/protobufAny"},"type":"array"},"message":{"type":"string"}},"type":"object"}}}
2 changes: 1 addition & 1 deletion art-admin/app/static/swagger/nft.swagger.json
Original file line number Diff line number Diff line change
Expand Up @@ -325,7 +325,7 @@
},
"/api/nft/{id}": {
"delete": {
"operationId": "DeleteNFOffchainUrl",
"operationId": "DeleteNFTOffchainUrl",
"responses": {
"200": {
"description": "A successful response.",
Expand Down
Loading

0 comments on commit fc49b6f

Please sign in to comment.