Class BitSetFactory

java.lang.Object
com.cedarsoftware.io.factory.BitSetFactory
All Implemented Interfaces:
ClassFactory

public class BitSetFactory extends Object implements ClassFactory
Factory to create BitSet instances during deserialization. Supports two JSON formats:
  • Binary string (preferred): {"@type":"BitSet","value":"101010"}
  • Array of indices (legacy): {"@type":"BitSet","value":[1,3,5]}
In binary string format, rightmost character is bit 0 (standard binary notation).
Author:
John DeRegnaucourt (jdereg@gmail.com)
Copyright (c) Cedar Software LLC

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

License

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
  • Constructor Details

    • BitSetFactory

      public BitSetFactory()
  • Method Details

    • newInstance

      public Object newInstance(Class<?> c, JsonObject jObj, Resolver resolver)
      Description copied from interface: ClassFactory
      Implement this method to return a new instance of the passed in Class. Use the passed in JsonObject to supply values to the construction of the object.
      Specified by:
      newInstance in interface ClassFactory
      Parameters:
      c - Class of the object that needs to be created
      jObj - JsonObject containing the JSON data (if primitive type use jObj.getValue())
      resolver - Resolver instance that has references to ID Map, Converter, ReadOptions
      Returns:
      a new instance of the class. If you fill the new instance using the value(s) from the JsonObject and no further work is needed for construction, then override the ClassFactory.isObjectFinal() method and return true.
    • isObjectFinal

      public boolean isObjectFinal()
      Specified by:
      isObjectFinal in interface ClassFactory
      Returns:
      true if this object is instantiated and completely filled using the contents from the JsonObject. In this case, no further processing will be performed on the instance. If the object has sub-objects (complex fields), then return false so that json-io will continue filling out the remaining portion of the object.