upd: helper utility updated
This commit is contained in:
parent
7a695c239e
commit
c33c1305ff
@ -0,0 +1,88 @@
|
||||
package handler
|
||||
|
||||
import (
|
||||
"embed"
|
||||
"encoding/json"
|
||||
"errors"
|
||||
|
||||
"go/module/essential/visible/service/helper/retriever"
|
||||
)
|
||||
|
||||
// constant
|
||||
const (
|
||||
// resource
|
||||
obrimHandlerResourceIdentifier = "framework/glossary" // change identifier if needed
|
||||
obrimHandlerResourceFileName = "resource" // change file name if needed
|
||||
obrimHandlerResourceFileExt = ".json" // do not change
|
||||
|
||||
// success
|
||||
ObrimHandlerCodeSuccessResourceAvailable = "SUCCESS_RESOURCE_AVAILABLE"
|
||||
|
||||
// fail
|
||||
ObrimHandlerCodeFailedResourceNotFound = "FAILED_RESOURCE_NOT_FOUND"
|
||||
ObrimHandlerCodeFailedInvalidResource = "FAILED_INVALID_RESOURCE"
|
||||
)
|
||||
|
||||
// obrimHandlerEmbeddedResource stores the embedded resource file.
|
||||
//
|
||||
//go:embed resource.json
|
||||
var obrimHandlerEmbeddedResource embed.FS
|
||||
|
||||
// obrimHandlerProvider implements the Retriever JSON provider contract.
|
||||
type obrimHandlerProvider struct{}
|
||||
|
||||
// Retrieve loads and returns the complete parsed resource payload.
|
||||
func (provider obrimHandlerProvider) Retrieve() (any, error) {
|
||||
return obrimHandlerFetch()
|
||||
}
|
||||
|
||||
// init registers the handler during package initialization.
|
||||
func init() {
|
||||
obrimHandlerRegister()
|
||||
}
|
||||
|
||||
// obrimHandlerRegister registers the handler with Retriever.
|
||||
func obrimHandlerRegister() {
|
||||
retriever.ObrimRetrieverJsonRegister(
|
||||
obrimHandlerResourceIdentifier,
|
||||
obrimHandlerProvider{},
|
||||
)
|
||||
}
|
||||
|
||||
// obrimHandlerFetch loads, parses, and returns the complete resource payload.
|
||||
func obrimHandlerFetch() (any, error) {
|
||||
resource, err := obrimHandlerLoadResource()
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
payload, err := obrimHandlerParseResource(resource)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return payload, nil
|
||||
}
|
||||
|
||||
// obrimHandlerLoadResource loads the embedded resource.
|
||||
func obrimHandlerLoadResource() ([]byte, error) {
|
||||
resource, err := obrimHandlerEmbeddedResource.ReadFile(
|
||||
obrimHandlerResourceFileName + obrimHandlerResourceFileExt,
|
||||
)
|
||||
if err != nil {
|
||||
return nil, errors.New(ObrimHandlerCodeFailedResourceNotFound)
|
||||
}
|
||||
|
||||
return resource, nil
|
||||
}
|
||||
|
||||
// obrimHandlerParseResource parses the embedded JSON resource.
|
||||
func obrimHandlerParseResource(resource []byte) (map[string]any, error) {
|
||||
var payload map[string]any
|
||||
|
||||
if err := json.Unmarshal(resource, &payload); err != nil {
|
||||
return nil, errors.New(ObrimHandlerCodeFailedInvalidResource)
|
||||
}
|
||||
|
||||
return payload, nil
|
||||
}
|
||||
@ -0,0 +1,88 @@
|
||||
package handler
|
||||
|
||||
import (
|
||||
"embed"
|
||||
"encoding/json"
|
||||
"errors"
|
||||
|
||||
"go/module/essential/visible/service/helper/retriever"
|
||||
)
|
||||
|
||||
// constant
|
||||
const (
|
||||
// resource
|
||||
obrimHandlerResourceIdentifier = "framework/metadata" // change identifier if needed
|
||||
obrimHandlerResourceFileName = "resource" // change file name if needed
|
||||
obrimHandlerResourceFileExt = ".json" // do not change
|
||||
|
||||
// success
|
||||
ObrimHandlerCodeSuccessResourceAvailable = "SUCCESS_RESOURCE_AVAILABLE"
|
||||
|
||||
// fail
|
||||
ObrimHandlerCodeFailedResourceNotFound = "FAILED_RESOURCE_NOT_FOUND"
|
||||
ObrimHandlerCodeFailedInvalidResource = "FAILED_INVALID_RESOURCE"
|
||||
)
|
||||
|
||||
// obrimHandlerEmbeddedResource stores the embedded resource file.
|
||||
//
|
||||
//go:embed resource.json
|
||||
var obrimHandlerEmbeddedResource embed.FS
|
||||
|
||||
// obrimHandlerProvider implements the Retriever JSON provider contract.
|
||||
type obrimHandlerProvider struct{}
|
||||
|
||||
// Retrieve loads and returns the complete parsed resource payload.
|
||||
func (provider obrimHandlerProvider) Retrieve() (any, error) {
|
||||
return obrimHandlerFetch()
|
||||
}
|
||||
|
||||
// init registers the handler during package initialization.
|
||||
func init() {
|
||||
obrimHandlerRegister()
|
||||
}
|
||||
|
||||
// obrimHandlerRegister registers the handler with Retriever.
|
||||
func obrimHandlerRegister() {
|
||||
retriever.ObrimRetrieverJsonRegister(
|
||||
obrimHandlerResourceIdentifier,
|
||||
obrimHandlerProvider{},
|
||||
)
|
||||
}
|
||||
|
||||
// obrimHandlerFetch loads, parses, and returns the complete resource payload.
|
||||
func obrimHandlerFetch() (any, error) {
|
||||
resource, err := obrimHandlerLoadResource()
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
payload, err := obrimHandlerParseResource(resource)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return payload, nil
|
||||
}
|
||||
|
||||
// obrimHandlerLoadResource loads the embedded resource.
|
||||
func obrimHandlerLoadResource() ([]byte, error) {
|
||||
resource, err := obrimHandlerEmbeddedResource.ReadFile(
|
||||
obrimHandlerResourceFileName + obrimHandlerResourceFileExt,
|
||||
)
|
||||
if err != nil {
|
||||
return nil, errors.New(ObrimHandlerCodeFailedResourceNotFound)
|
||||
}
|
||||
|
||||
return resource, nil
|
||||
}
|
||||
|
||||
// obrimHandlerParseResource parses the embedded JSON resource.
|
||||
func obrimHandlerParseResource(resource []byte) (map[string]any, error) {
|
||||
var payload map[string]any
|
||||
|
||||
if err := json.Unmarshal(resource, &payload); err != nil {
|
||||
return nil, errors.New(ObrimHandlerCodeFailedInvalidResource)
|
||||
}
|
||||
|
||||
return payload, nil
|
||||
}
|
||||
@ -0,0 +1,88 @@
|
||||
package handler
|
||||
|
||||
import (
|
||||
"embed"
|
||||
"encoding/json"
|
||||
"errors"
|
||||
|
||||
"go/module/essential/visible/service/helper/retriever"
|
||||
)
|
||||
|
||||
// constant
|
||||
const (
|
||||
// resource
|
||||
obrimHandlerResourceIdentifier = "software/glossary" // change identifier if needed
|
||||
obrimHandlerResourceFileName = "resource" // change file name if needed
|
||||
obrimHandlerResourceFileExt = ".json" // do not change
|
||||
|
||||
// success
|
||||
ObrimHandlerCodeSuccessResourceAvailable = "SUCCESS_RESOURCE_AVAILABLE"
|
||||
|
||||
// fail
|
||||
ObrimHandlerCodeFailedResourceNotFound = "FAILED_RESOURCE_NOT_FOUND"
|
||||
ObrimHandlerCodeFailedInvalidResource = "FAILED_INVALID_RESOURCE"
|
||||
)
|
||||
|
||||
// obrimHandlerEmbeddedResource stores the embedded resource file.
|
||||
//
|
||||
//go:embed resource.json
|
||||
var obrimHandlerEmbeddedResource embed.FS
|
||||
|
||||
// obrimHandlerProvider implements the Retriever JSON provider contract.
|
||||
type obrimHandlerProvider struct{}
|
||||
|
||||
// Retrieve loads and returns the complete parsed resource payload.
|
||||
func (provider obrimHandlerProvider) Retrieve() (any, error) {
|
||||
return obrimHandlerFetch()
|
||||
}
|
||||
|
||||
// init registers the handler during package initialization.
|
||||
func init() {
|
||||
obrimHandlerRegister()
|
||||
}
|
||||
|
||||
// obrimHandlerRegister registers the handler with Retriever.
|
||||
func obrimHandlerRegister() {
|
||||
retriever.ObrimRetrieverJsonRegister(
|
||||
obrimHandlerResourceIdentifier,
|
||||
obrimHandlerProvider{},
|
||||
)
|
||||
}
|
||||
|
||||
// obrimHandlerFetch loads, parses, and returns the complete resource payload.
|
||||
func obrimHandlerFetch() (any, error) {
|
||||
resource, err := obrimHandlerLoadResource()
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
payload, err := obrimHandlerParseResource(resource)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return payload, nil
|
||||
}
|
||||
|
||||
// obrimHandlerLoadResource loads the embedded resource.
|
||||
func obrimHandlerLoadResource() ([]byte, error) {
|
||||
resource, err := obrimHandlerEmbeddedResource.ReadFile(
|
||||
obrimHandlerResourceFileName + obrimHandlerResourceFileExt,
|
||||
)
|
||||
if err != nil {
|
||||
return nil, errors.New(ObrimHandlerCodeFailedResourceNotFound)
|
||||
}
|
||||
|
||||
return resource, nil
|
||||
}
|
||||
|
||||
// obrimHandlerParseResource parses the embedded JSON resource.
|
||||
func obrimHandlerParseResource(resource []byte) (map[string]any, error) {
|
||||
var payload map[string]any
|
||||
|
||||
if err := json.Unmarshal(resource, &payload); err != nil {
|
||||
return nil, errors.New(ObrimHandlerCodeFailedInvalidResource)
|
||||
}
|
||||
|
||||
return payload, nil
|
||||
}
|
||||
@ -0,0 +1,88 @@
|
||||
package handler
|
||||
|
||||
import (
|
||||
"embed"
|
||||
"encoding/json"
|
||||
"errors"
|
||||
|
||||
"go/module/essential/visible/service/helper/retriever"
|
||||
)
|
||||
|
||||
// constant
|
||||
const (
|
||||
// resource
|
||||
obrimHandlerResourceIdentifier = "software/metadata" // change identifier if needed
|
||||
obrimHandlerResourceFileName = "resource" // change file name if needed
|
||||
obrimHandlerResourceFileExt = ".json" // do not change
|
||||
|
||||
// success
|
||||
ObrimHandlerCodeSuccessResourceAvailable = "SUCCESS_RESOURCE_AVAILABLE"
|
||||
|
||||
// fail
|
||||
ObrimHandlerCodeFailedResourceNotFound = "FAILED_RESOURCE_NOT_FOUND"
|
||||
ObrimHandlerCodeFailedInvalidResource = "FAILED_INVALID_RESOURCE"
|
||||
)
|
||||
|
||||
// obrimHandlerEmbeddedResource stores the embedded resource file.
|
||||
//
|
||||
//go:embed resource.json
|
||||
var obrimHandlerEmbeddedResource embed.FS
|
||||
|
||||
// obrimHandlerProvider implements the Retriever JSON provider contract.
|
||||
type obrimHandlerProvider struct{}
|
||||
|
||||
// Retrieve loads and returns the complete parsed resource payload.
|
||||
func (provider obrimHandlerProvider) Retrieve() (any, error) {
|
||||
return obrimHandlerFetch()
|
||||
}
|
||||
|
||||
// init registers the handler during package initialization.
|
||||
func init() {
|
||||
obrimHandlerRegister()
|
||||
}
|
||||
|
||||
// obrimHandlerRegister registers the handler with Retriever.
|
||||
func obrimHandlerRegister() {
|
||||
retriever.ObrimRetrieverJsonRegister(
|
||||
obrimHandlerResourceIdentifier,
|
||||
obrimHandlerProvider{},
|
||||
)
|
||||
}
|
||||
|
||||
// obrimHandlerFetch loads, parses, and returns the complete resource payload.
|
||||
func obrimHandlerFetch() (any, error) {
|
||||
resource, err := obrimHandlerLoadResource()
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
payload, err := obrimHandlerParseResource(resource)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return payload, nil
|
||||
}
|
||||
|
||||
// obrimHandlerLoadResource loads the embedded resource.
|
||||
func obrimHandlerLoadResource() ([]byte, error) {
|
||||
resource, err := obrimHandlerEmbeddedResource.ReadFile(
|
||||
obrimHandlerResourceFileName + obrimHandlerResourceFileExt,
|
||||
)
|
||||
if err != nil {
|
||||
return nil, errors.New(ObrimHandlerCodeFailedResourceNotFound)
|
||||
}
|
||||
|
||||
return resource, nil
|
||||
}
|
||||
|
||||
// obrimHandlerParseResource parses the embedded JSON resource.
|
||||
func obrimHandlerParseResource(resource []byte) (map[string]any, error) {
|
||||
var payload map[string]any
|
||||
|
||||
if err := json.Unmarshal(resource, &payload); err != nil {
|
||||
return nil, errors.New(ObrimHandlerCodeFailedInvalidResource)
|
||||
}
|
||||
|
||||
return payload, nil
|
||||
}
|
||||
Loading…
Reference in New Issue
Block a user