code: function(reflector, property_name) {
          this.reflector = reflector;
          this.name = property_name;
          this.meta = reflector.getMeta().metadata[property_name];
  
          // If we, for some strange reason don't have metadata, fill it in
          // with some default values.
          if (typeof (this.meta) === 'undefined') {
              this.meta = {
                  name        : this.name,
                  type        : null,
                  visibility  : 'public',
                  is_nullable : false,
                  is_abstract : false,
                  is_read_only: false,
                  is_final    : false
              };
          }
  
          // Attempt to fetch the type by fetching the predefined value.
          // However, only do this for non-nullable types to avoid type
          // mismatching exceptions in setters.
          if (this.meta.type === null && this.meta.is_nullable === false) {
              this.meta.type = typeof (this.reflector.getProto()[this.meta.name]);
          }
      }
docs: Constructor.
  
  @param JOII.Reflection.Class reflector
  @param string property_name