Metadata.js 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. /*
  2. *
  3. * Licensed to the Apache Software Foundation (ASF) under one
  4. * or more contributor license agreements. See the NOTICE file
  5. * distributed with this work for additional information
  6. * regarding copyright ownership. The ASF licenses this file
  7. * to you under the Apache License, Version 2.0 (the
  8. * "License"); you may not use this file except in compliance
  9. * with the License. You may obtain a copy of the License at
  10. *
  11. * http://www.apache.org/licenses/LICENSE-2.0
  12. *
  13. * Unless required by applicable law or agreed to in writing,
  14. * software distributed under the License is distributed on an
  15. * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
  16. * KIND, either express or implied. See the License for the
  17. * specific language governing permissions and limitations
  18. * under the License.
  19. *
  20. */
  21. /**
  22. * Information about the state of the file or directory
  23. *
  24. * {Date} modificationTime (readonly)
  25. */
  26. var Metadata = function(metadata) {
  27. if (typeof metadata == "object") {
  28. this.modificationTime = new Date(metadata.modificationTime);
  29. this.size = metadata.size || 0;
  30. } else if (typeof metadata == "undefined") {
  31. this.modificationTime = null;
  32. this.size = 0;
  33. } else {
  34. /* Backwards compatiblity with platforms that only return a timestamp */
  35. this.modificationTime = new Date(metadata);
  36. }
  37. };
  38. module.exports = Metadata;