DateObjectSerializer.js 791 B

123456789101112131415161718192021222324252627282930
  1. /*
  2. MIT License http://www.opensource.org/licenses/mit-license.php
  3. */
  4. "use strict";
  5. /** @typedef {import("./ObjectMiddleware").ObjectDeserializerContext} ObjectDeserializerContext */
  6. /** @typedef {import("./ObjectMiddleware").ObjectSerializerContext} ObjectSerializerContext */
  7. class DateObjectSerializer {
  8. /**
  9. * Serializes this instance into the provided serializer context.
  10. * @param {Date} obj date
  11. * @param {ObjectSerializerContext} context context
  12. */
  13. serialize(obj, context) {
  14. context.write(obj.getTime());
  15. }
  16. /**
  17. * Restores this instance from the provided deserializer context.
  18. * @param {ObjectDeserializerContext} context context
  19. * @returns {Date} date
  20. */
  21. deserialize(context) {
  22. return new Date(context.read());
  23. }
  24. }
  25. module.exports = DateObjectSerializer;