1.0.4 • Published 5 years ago

mares-meta-app-service v1.0.4

Weekly downloads
1
License
ISC
Repository
-
Last release
5 years ago

mares-meta-app-service

mares application layer에서 필요한 meta데이터용 서비스 클래스입니다.

Installation

npm install --save mares-meta-app-service

Example

메타앱서비스를 상속받은 메타서비스 클래스를 작성합니다.

//message-meta-app-service.js
const MetaAppService = require('mares-meta-app-service')
const meta = {
    std: {
        minLength: 1,
        maxLength: 100
    }
}

/**
 * Message Service Metadata class
 */
class MessageMetaAppService extends MetaAppService {
	constructor(meta) {
        super(meta)
    }
}

module.exports = MessageMetaAppService

이후 상속받은 메타 앱서비스의 인스턴스를 이용하여 여러 모듈의 메타데이터의 통합작업을 수행합니다.

const MessageMetaAppService = require('./message-meta-app-service')
const meta = require('../config/meta')

let metaAppService = new MessageMetaAppService(meta)

// 사용자정의 스탠다드 메타값을 추가합니다.
metaAppService.addStandard(std)

// 에러코드를 추가합니다. 보통 third-party의 getCodes() 함수를 호출하여 얻어옵니다.
metaAppService.addCode(codes)

// 번역파일을 추가합니다.
metaAppService.addLanguage(langs)

// 완성된 다른 메타데이터와 통합합니다.
metaAppService.mergeMeta({
    std: {},
    codes: {},
    langs: {}
})

// 최종 메타데이터를 가져옵니다.
const combinedMeta = metaAppService.getMeta()
module.exports = combinedMeta