Skip to content

Instantly share code, notes, and snippets.

@kyuwoo-choi
Created June 14, 2017 16:11
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save kyuwoo-choi/9eba7d37d0fe47a12bb7e96193b21b0e to your computer and use it in GitHub Desktop.
Save kyuwoo-choi/9eba7d37d0fe47a12bb7e96193b21b0e to your computer and use it in GitHub Desktop.
hello world AOP cache aspect
class CacheAspect {
...
@beforeMethod({
methodNamePattern: /^get.*/,
classNamePattern: /^[Book|User]Collection$/
})
beforeGet(meta, args) {
let key = `${meta.name}:${args.join()}`;
let method = meta.method;
method.proceed = true;
if (this.cache.hasOwnProperty(key)) {
method.result = this.cache[key];
method.proceed = false;
}
}
...
}
@Wove
class BookCollection {
...
getNameByISBN(id, article) {
return this.get({
isbn: isbn
}, {
onSuccess: 'name'
onFail: null
});
}
...
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment