private void updateLocalVersions() {
    if (NavigineApp.Navigation == null) return;

    for (int i = 0; i < mInfoList.size(); ++i) {
      LocationInfo info = mInfoList.get(i);
      String versionStr = LocationLoader.getLocalVersion(NavigineApp.AppContext, info.title);
      if (versionStr != null) {
        // Log.d(TAG, info.title + ": " + versionStr);
        info.localModified = versionStr.endsWith("+");
        if (info.localModified) versionStr = versionStr.substring(0, versionStr.length() - 1);
        try {
          info.localVersion = Integer.parseInt(versionStr);
        } catch (Throwable e) {
        }
      } else {
        info.localVersion = -1;

        String mapFile = NavigineApp.Settings.getString("map_file", "");
        if (mapFile.equals(info.archiveFile)) {
          NavigineApp.Navigation.loadArchive(null);
          SharedPreferences.Editor editor = NavigineApp.Settings.edit();
          editor.putString("map_file", "");
          editor.commit();
        }
      }
    }
    mAdapter.updateList();
  }
  // Creates the ByteBuffer for the ogg tag
  public void create(Tag tag, ByteBuffer buf, List fields, int tagSize, int padding)
      throws UnsupportedEncodingException {
    String vendorString = ((OggTag) tag).getVendor();
    int vendorLength = Utils.getUTF8Bytes(vendorString).length;
    buf.put(
        new byte[] {
          (byte) (vendorLength & 0xFF),
          (byte) ((vendorLength & 0xFF00) >> 8),
          (byte) ((vendorLength & 0xFF0000) >> 16),
          (byte) ((vendorLength & 0xFF000000) >> 24)
        });
    buf.put(Utils.getUTF8Bytes(vendorString));

    // [user comment list length]
    int listLength = fields.size();
    byte[] b = new byte[4];
    b[3] = (byte) ((listLength & 0xFF000000) >> 24);
    b[2] = (byte) ((listLength & 0x00FF0000) >> 16);
    b[1] = (byte) ((listLength & 0x0000FF00) >> 8);
    b[0] = (byte) (listLength & 0x000000FF);
    buf.put(b);

    Iterator it = fields.iterator();
    while (it.hasNext()) {
      buf.put((byte[]) it.next());
    }
  }
  /** {@inheritDoc} */
  @SuppressWarnings("TypeMayBeWeakened")
  @Nullable
  private Collection<byte[]> marshalFieldsCollection(
      @Nullable Collection<Object> col, GridCacheContext<K, V> ctx) throws GridException {
    assert ctx != null;

    if (col == null) return null;

    Collection<List<Object>> col0 = new ArrayList<>(col.size());

    for (Object o : col) {
      List<GridIndexingEntity<?>> list = (List<GridIndexingEntity<?>>) o;
      List<Object> list0 = new ArrayList<>(list.size());

      for (GridIndexingEntity<?> ent : list) {
        if (ent.bytes() != null) list0.add(ent.bytes());
        else {
          if (ctx.deploymentEnabled()) prepareObject(ent.value(), ctx);

          list0.add(CU.marshal(ctx, ent.value()));
        }
      }

      col0.add(list0);
    }

    return marshalCollection(col0, ctx);
  }
  /** {@inheritDoc} */
  @SuppressWarnings("TypeMayBeWeakened")
  @Nullable
  private Collection<Object> unmarshalFieldsCollection(
      @Nullable Collection<byte[]> byteCol, GridCacheContext<K, V> ctx, ClassLoader ldr)
      throws GridException {
    assert ctx != null;
    assert ldr != null;

    Collection<Object> col = unmarshalCollection(byteCol, ctx, ldr);
    Collection<Object> col0 = null;

    if (col != null) {
      col0 = new ArrayList<>(col.size());

      for (Object o : col) {
        List<Object> list = (List<Object>) o;
        List<Object> list0 = new ArrayList<>(list.size());

        for (Object obj : list)
          list0.add(obj != null ? ctx.marshaller().unmarshal((byte[]) obj, ldr) : null);

        col0.add(list0);
      }
    }

    return col0;
  }
  private void putList(String name, List l) {
    _put(ARRAY, name);
    final int sizePos = _buf.position();
    _buf.putInt(0);

    for (int i = 0; i < l.size(); i++) _putObjectField(String.valueOf(i), l.get(i));

    _buf.put(EOO);
    _buf.putInt(sizePos, _buf.position() - sizePos);
  }
  /**
   * @param idx Index.
   * @return Conflict version.
   */
  @Nullable
  public GridCacheVersion conflictVersion(int idx) {
    if (conflictVers != null) {
      assert idx >= 0 && idx < conflictVers.size();

      return conflictVers.get(idx);
    }

    return null;
  }
 /**
  * Adds <tt>WebRtcDataStreamListener</tt> to the list of listeners.
  *
  * @param listener the <tt>WebRtcDataStreamListener</tt> to be added to the listeners list.
  */
 public void addChannelListener(WebRtcDataStreamListener listener) {
   if (listener == null) {
     throw new NullPointerException("listener");
   } else {
     synchronized (listeners) {
       if (!listeners.contains(listener)) {
         listeners.add(listener);
       }
     }
   }
 }
  /**
   * Gets the <tt>WebRtcDataStreamListener</tt>s added to this instance.
   *
   * @return the <tt>WebRtcDataStreamListener</tt>s added to this instance or <tt>null</tt> if there
   *     are no <tt>WebRtcDataStreamListener</tt>s added to this instance
   */
  private WebRtcDataStreamListener[] getChannelListeners() {
    WebRtcDataStreamListener[] ls;

    synchronized (listeners) {
      if (listeners.isEmpty()) {
        ls = null;
      } else {
        ls = listeners.toArray(new WebRtcDataStreamListener[listeners.size()]);
      }
    }
    return ls;
  }
 @MarshalsPointer
 public static List<CFURLUbiquitousItemDownloadingStatus> toObject(
     Class<? extends CFType> cls, long handle, long flags) {
   CFArray o = (CFArray) CFType.Marshaler.toObject(CFArray.class, handle, flags);
   if (o == null) {
     return null;
   }
   List<CFURLUbiquitousItemDownloadingStatus> list = new ArrayList<>();
   for (int i = 0; i < o.size(); i++) {
     list.add(CFURLUbiquitousItemDownloadingStatus.valueOf(o.get(i, CFString.class)));
   }
   return list;
 }
Beispiel #10
0
 @MarshalsPointer
 public static List<CGImagePropertyGIF> toObject(
     Class<? extends CFType> cls, long handle, long flags) {
   CFArray o = (CFArray) CFType.Marshaler.toObject(CFArray.class, handle, flags);
   if (o == null) {
     return null;
   }
   List<CGImagePropertyGIF> list = new ArrayList<>();
   for (int i = 0; i < o.size(); i++) {
     list.add(CGImagePropertyGIF.valueOf(o.get(i, CFString.class)));
   }
   return list;
 }
Beispiel #11
0
 @MarshalsPointer
 public static List<CVBufferAttributes> toObject(
     Class<? extends CFType> cls, long handle, long flags) {
   CFArray o = (CFArray) CFType.Marshaler.toObject(CFArray.class, handle, flags);
   if (o == null) {
     return null;
   }
   List<CVBufferAttributes> list = new ArrayList<>();
   for (int i = 0; i < o.size(); i++) {
     list.add(new CVBufferAttributes(o.get(i, CFDictionary.class)));
   }
   return list;
 }
 @MarshalsPointer
 public static List<CFStreamSocketSOCKSVersion> toObject(
     Class<? extends CFType> cls, long handle, long flags) {
   CFArray o = (CFArray) CFType.Marshaler.toObject(cls, handle, flags);
   if (o == null) {
     return null;
   }
   List<CFStreamSocketSOCKSVersion> list = new ArrayList<>();
   for (int i = 0; i < o.size(); i++) {
     list.add(CFStreamSocketSOCKSVersion.valueOf(o.get(i, CFString.class)));
   }
   return list;
 }
 @MarshalsPointer
 public static List<CMFormatDescriptionExtension> toObject(
     Class<? extends CFType> cls, long handle, long flags) {
   CFArray o = (CFArray) CFType.Marshaler.toObject(cls, handle, flags);
   if (o == null) {
     return null;
   }
   List<CMFormatDescriptionExtension> list = new ArrayList<>();
   for (int i = 0; i < o.size(); i++) {
     list.add(new CMFormatDescriptionExtension(o.get(i, CFDictionary.class)));
   }
   return list;
 }
Beispiel #14
0
 @SuppressWarnings("unchecked")
 @MarshalsPointer
 public static List<SCNLightingModel> toObject(
     Class<? extends NSObject> cls, long handle, long flags) {
   NSArray<NSString> o = (NSArray<NSString>) NSObject.Marshaler.toObject(cls, handle, flags);
   if (o == null) {
     return null;
   }
   List<SCNLightingModel> list = new ArrayList<>();
   for (int i = 0; i < o.size(); i++) {
     list.add(SCNLightingModel.valueOf(o.get(i)));
   }
   return list;
 }
Beispiel #15
0
 @SuppressWarnings("unchecked")
 @MarshalsPointer
 public static List<CMVideoCodecType> toObject(
     Class<? extends NSObject> cls, long handle, long flags) {
   NSArray<NSString> o = (NSArray<NSString>) NSObject.Marshaler.toObject(cls, handle, flags);
   if (o == null) {
     return null;
   }
   List<CMVideoCodecType> list = new ArrayList<>();
   for (NSString str : o) {
     list.add(CMVideoCodecType.valueOf(str));
   }
   return list;
 }
 @MarshalsPointer
 public static List<AVSampleRateConverterSettings> toObject(
     Class<? extends NSObject> cls, long handle, long flags) {
   NSArray<NSDictionary> o =
       (NSArray<NSDictionary>) NSObject.Marshaler.toObject(NSArray.class, handle, flags);
   if (o == null) {
     return null;
   }
   List<AVSampleRateConverterSettings> list = new ArrayList<>();
   for (int i = 0; i < o.size(); i++) {
     list.add(new AVSampleRateConverterSettings(o.get(i)));
   }
   return list;
 }
 @MarshalsPointer
 public static List<CBCentralManagerOptions> toObject(
     Class<? extends NSObject> cls, long handle, long flags) {
   NSArray<NSDictionary> o =
       (NSArray<NSDictionary>) NSObject.Marshaler.toObject(NSArray.class, handle, flags);
   if (o == null) {
     return null;
   }
   List<CBCentralManagerOptions> list = new ArrayList<>();
   for (int i = 0; i < o.size(); i++) {
     list.add(new CBCentralManagerOptions(o.get(i)));
   }
   return list;
 }
Beispiel #18
0
 @MarshalsPointer
 public static List<ABSource> toObject(Class<? extends CFType> cls, long handle, long flags) {
   CFArray o = (CFArray) CFType.Marshaler.toObject(cls, handle, flags);
   if (o == null) {
     return null;
   }
   List<ABSource> list = new ArrayList<>();
   for (long i = 0, n = o.size(); i < n; i++) {
     ABRecord record = o.get(i, ABRecord.class);
     list.add(
         (ABSource) NativeObject.Marshaler.toObject(ABSource.class, record.getHandle(), flags));
   }
   return list;
 }
 @MarshalsPointer
 public static List<MPMoviePlayerThumbnailRequest> toObject(
     Class<? extends NSObject> cls, long handle, long flags) {
   NSArray<NSDictionary> o =
       (NSArray<NSDictionary>) NSObject.Marshaler.toObject(NSArray.class, handle, flags);
   if (o == null) {
     return null;
   }
   List<MPMoviePlayerThumbnailRequest> list = new ArrayList<>();
   for (int i = 0; i < o.size(); i++) {
     list.add(new MPMoviePlayerThumbnailRequest(o.get(i)));
   }
   return list;
 }
Beispiel #20
0
 @SuppressWarnings("unchecked")
 @MarshalsPointer
 public static List<CVPixelFormatType> toObject(
     Class<? extends NSObject> cls, long handle, long flags) {
   NSArray<NSNumber> o = (NSArray<NSNumber>) NSObject.Marshaler.toObject(cls, handle, flags);
   if (o == null) {
     return null;
   }
   List<CVPixelFormatType> list = new ArrayList<>();
   for (NSNumber n : o) {
     list.add(CVPixelFormatType.valueOf(n.longValue()));
   }
   return list;
 }
Beispiel #21
0
 @SuppressWarnings("unchecked")
 @MarshalsPointer
 public static List<SCNMatrix4> toObject(
     Class<? extends NSObject> cls, long handle, long flags) {
   NSArray<NSValue> o = (NSArray<NSValue>) NSObject.Marshaler.toObject(cls, handle, flags);
   if (o == null) {
     return null;
   }
   List<SCNMatrix4> list = new ArrayList<>();
   for (NSValue val : o) {
     list.add(val.SCNMatrix4Value());
   }
   return list;
 }
 @MarshalsPointer
 public static List<UIImagePickerControllerEditingInfo> toObject(
     Class<? extends NSObject> cls, long handle, long flags) {
   NSArray<NSDictionary> o =
       (NSArray<NSDictionary>) NSObject.Marshaler.toObject(NSArray.class, handle, flags);
   if (o == null) {
     return null;
   }
   List<UIImagePickerControllerEditingInfo> list = new ArrayList<>();
   for (int i = 0; i < o.size(); i++) {
     list.add(new UIImagePickerControllerEditingInfo(o.get(i)));
   }
   return list;
 }
 @SuppressWarnings("unchecked")
 @MarshalsPointer
 public static List<CNInstantMessageAddressPropertyKey> toObject(
     Class<? extends NSObject> cls, long handle, long flags) {
   NSArray<NSString> o =
       (NSArray<NSString>) NSObject.Marshaler.toObject(NSArray.class, handle, flags);
   if (o == null) {
     return null;
   }
   List<CNInstantMessageAddressPropertyKey> list = new ArrayList<>();
   for (int i = 0; i < o.size(); i++) {
     list.add(CNInstantMessageAddressPropertyKey.valueOf(o.get(i)));
   }
   return list;
 }
 @SuppressWarnings("unchecked")
 @MarshalsPointer
 public static List<HKDietaryQuantityTypeIdentifier> toObject(
     Class<? extends NSObject> cls, long handle, long flags) {
   NSArray<NSString> o =
       (NSArray<NSString>) NSObject.Marshaler.toObject(NSArray.class, handle, flags);
   if (o == null) {
     return null;
   }
   List<HKDietaryQuantityTypeIdentifier> list = new ArrayList<>();
   for (int i = 0; i < o.size(); i++) {
     list.add(HKDietaryQuantityTypeIdentifier.valueOf(o.get(i)));
   }
   return list;
 }
 @MarshalsPointer
 public static List<NSNetServiceErrorUserInfo> toObject(
     Class<? extends NSObject> cls, long handle, long flags) {
   NSArray<NSDictionary<NSString, NSObject>> o =
       (NSArray<NSDictionary<NSString, NSObject>>)
           NSObject.Marshaler.toObject(cls, handle, flags);
   if (o == null) {
     return null;
   }
   List<NSNetServiceErrorUserInfo> list = new ArrayList<>();
   for (int i = 0; i < o.size(); i++) {
     list.add(new NSNetServiceErrorUserInfo(o.get(i)));
   }
   return list;
 }
  /** this is really for embedded objects */
  private int putObject(String name, DBObject o) {
    if (o == null) throw new NullPointerException("can't save a null object");

    if (DEBUG)
      System.out.println(
          "putObject : " + name + " [" + o.getClass() + "]" + " # keys " + o.keySet().size());

    if (_flipped) throw new IllegalStateException("already flipped");
    final int start = _buf.position();

    byte myType = OBJECT;
    if (o instanceof List) myType = ARRAY;

    if (_handleSpecialObjects(name, o)) return _buf.position() - start;

    if (name != null) {
      _put(myType, name);
    }

    final int sizePos = _buf.position();
    _buf.putInt(0); // leaving space for this.  set it at the end

    List transientFields = null;

    if (myType == OBJECT) {
      if (o.containsField("_id")) _putObjectField("_id", o.get("_id"));

      {
        Object temp = o.get("_transientFields");
        if (temp instanceof List) transientFields = (List) temp;
      }
    }

    for (String s : o.keySet()) {

      if (s.equals("_id")) continue;

      if (transientFields != null && transientFields.contains(s)) continue;

      Object val = o.get(s);

      _putObjectField(s, val);
    }
    _buf.put(EOO);

    _buf.putInt(sizePos, _buf.position() - sizePos);
    return _buf.position() - start;
  }
  /**
   * Adds a Near key.
   *
   * @param key Key.
   * @param keyBytes Key bytes.
   * @param ctx Context.
   * @throws GridException If failed.
   */
  public void addNearKey(K key, byte[] keyBytes, GridCacheContext<K, V> ctx) throws GridException {
    if (ctx.deploymentEnabled()) prepareObject(key, ctx);

    if (nearKeyBytes == null) nearKeyBytes = new ArrayList<>();

    nearKeyBytes.add(keyBytes);
  }
 /**
  * Removes <tt>WebRtcDataStreamListener</tt> from the list of listeners.
  *
  * @param listener the <tt>WebRtcDataStreamListener</tt> to be removed from the listeners list.
  */
 public void removeChannelListener(WebRtcDataStreamListener listener) {
   if (listener != null) {
     synchronized (listeners) {
       listeners.remove(listener);
     }
   }
 }
  /**
   * @param placeNameServiceSet the set of PlaceNameService objects that PlaceNameLayer will render.
   * @throws IllegalArgumentException if {@link
   *     gov.nasa.worldwind.layers.placename.PlaceNameServiceSet} is null
   */
  public PlaceNameLayer(PlaceNameServiceSet placeNameServiceSet) {
    if (placeNameServiceSet == null) {
      String message = Logging.getMessage("nullValue.PlaceNameServiceSetIsNull");
      Logging.logger().fine(message);
      throw new IllegalArgumentException(message);
    }

    //
    this.placeNameServiceSet = placeNameServiceSet.deepCopy();
    for (int i = 0; i < this.placeNameServiceSet.getServiceCount(); i++) {
      // todo do this for long as well and pick min
      int calc1 =
          (int)
              (PlaceNameService.TILING_SECTOR.getDeltaLatDegrees()
                  / this.placeNameServiceSet
                      .getService(i)
                      .getTileDelta()
                      .getLatitude()
                      .getDegrees());
      int numLevels = (int) Math.log(calc1);
      navTiles.add(
          new NavigationTile(
              this.placeNameServiceSet.getService(i),
              PlaceNameService.TILING_SECTOR,
              numLevels,
              "top"));
    }

    if (!WorldWind.getMemoryCacheSet().containsCache(Tile.class.getName())) {
      long size = Configuration.getLongValue(AVKey.PLACENAME_LAYER_CACHE_SIZE, 2000000L);
      MemoryCache cache = new BasicMemoryCache((long) (0.85 * size), size);
      cache.setName("Placename Tiles");
      WorldWind.getMemoryCacheSet().addCache(Tile.class.getName(), cache);
    }
  }
  static void testMixed(Charset cs) throws Throwable {
    CharsetDecoder dec =
        cs.newDecoder()
            .onMalformedInput(CodingErrorAction.REPLACE)
            .onUnmappableCharacter(CodingErrorAction.REPLACE);
    CharsetEncoder enc =
        cs.newEncoder()
            .onMalformedInput(CodingErrorAction.REPLACE)
            .onUnmappableCharacter(CodingErrorAction.REPLACE);
    List<Integer> cps = new ArrayList<>(0x10000);
    int off = 0;
    int cp = 0;
    while (cp < 0x10000) {
      if (enc.canEncode((char) cp)) {
        cps.add(cp);
      }
      cp++;
    }
    Collections.shuffle(cps);
    char[] bmpCA = new char[cps.size()];
    for (int i = 0; i < cps.size(); i++) bmpCA[i] = (char) (int) cps.get(i);
    String bmpStr = new String(bmpCA);
    // getBytes(csn);
    byte[] bmpBA = bmpStr.getBytes(cs.name());
    ByteBuffer bf = enc.reset().encode(CharBuffer.wrap(bmpCA));
    byte[] baNIO = new byte[bf.limit()];
    bf.get(baNIO, 0, baNIO.length);
    if (!Arrays.equals(bmpBA, baNIO)) {
      throw new RuntimeException("getBytes(csn) failed  -> " + cs.name());
    }

    // getBytes(cs);
    bmpBA = bmpStr.getBytes(cs);
    if (!Arrays.equals(bmpBA, baNIO))
      throw new RuntimeException("getBytes(cs) failed  -> " + cs.name());

    // new String(csn);
    String strSC = new String(bmpBA, cs.name());
    String strNIO = dec.reset().decode(ByteBuffer.wrap(bmpBA)).toString();
    if (!strNIO.equals(strSC)) {
      throw new RuntimeException("new String(csn) failed  -> " + cs.name());
    }

    // new String(cs);
    strSC = new String(bmpBA, cs);
    if (!strNIO.equals(strSC)) throw new RuntimeException("new String(cs) failed  -> " + cs.name());
  }