Ejemplo n.º 1
0
 public static void testGeocodeInvalidFormat() {
   // all codes are invalid
   assertTrue(ConnectorFactory.getConnector("GC") instanceof UnknownConnector);
   assertTrue(ConnectorFactory.getConnector("OC") instanceof UnknownConnector);
   assertTrue(ConnectorFactory.getConnector("OX") instanceof UnknownConnector);
   assertTrue(ConnectorFactory.getConnector("GC 1234") instanceof UnknownConnector);
   assertTrue(ConnectorFactory.getConnector("OC 1234") instanceof UnknownConnector);
   assertTrue(ConnectorFactory.getConnector("OX 1234") instanceof UnknownConnector);
   assertTrue(ConnectorFactory.getConnector("GC-1234") instanceof UnknownConnector);
   assertTrue(ConnectorFactory.getConnector("OC-1234") instanceof UnknownConnector);
   assertTrue(ConnectorFactory.getConnector("OX-1234") instanceof UnknownConnector);
 }
Ejemplo n.º 2
0
  @Override
  public boolean onPrepareOptionsMenu(final Menu menu) {
    boolean smileyVisible = false;
    final Geocache cache = getLogContext().getCache();
    if (cache != null && ConnectorFactory.getConnector(cache).equals(GCConnector.getInstance())) {
      smileyVisible = true;
    }
    final Trackable trackable = getLogContext().getTrackable();
    if (trackable != null
        && ConnectorFactory.getConnector(trackable).equals(TravelBugConnector.getInstance())) {
      smileyVisible = true;
    }

    menu.findItem(R.id.menu_smilies).setVisible(smileyVisible);

    return true;
  }
Ejemplo n.º 3
0
 public static void testGeocodeOpenCaching() {
   assertTrue(ConnectorFactory.getConnector("OZ12345") instanceof OCConnector); // opencaching CZ
   assertTrue(ConnectorFactory.getConnector("OC12345") instanceof OCConnector); // opencaching DE
   assertTrue(ConnectorFactory.getConnector("OU12345") instanceof OCConnector); // opencaching US
   assertTrue(ConnectorFactory.getConnector("OK12345") instanceof OCConnector); // opencaching UK
   assertTrue(ConnectorFactory.getConnector("OJ12345") instanceof OCConnector); // opencaching JP
   assertTrue(ConnectorFactory.getConnector("OS12345") instanceof OCConnector); // opencaching NO
   assertTrue(ConnectorFactory.getConnector("OB12345") instanceof OCConnector); // opencaching NL
   assertTrue(ConnectorFactory.getConnector("OP12345") instanceof OCConnector); // opencaching PL
 }
Ejemplo n.º 4
0
  public static cgCache getCache(final String geoCode) {
    final Parameters params = new Parameters("cache_code", geoCode, "fields", SERVICE_CACHE_FIELDS);
    final JSONObject data = request(ConnectorFactory.getConnector(geoCode), SERVICE_CACHE, params);

    if (data == null) {
      return null;
    }

    return parseCache(data);
  }
Ejemplo n.º 5
0
 private void initializeFavoriteCheck() {
   if (ConnectorFactory.getConnector(cache).supportsAddToFavorite(cache, typeSelected)) {
     if (premFavPoints > 0) {
       favCheck.setVisibility(View.VISIBLE);
       favCheck.setText(getString(R.string.fav_points_remaining, premFavPoints));
     }
   } else {
     favCheck.setVisibility(View.GONE);
   }
 }
Ejemplo n.º 6
0
  private static String absoluteUrl(String url, String geocode) {
    final Uri uri = Uri.parse(url);

    if (!uri.isAbsolute()) {
      final IConnector connector = ConnectorFactory.getConnector(geocode);
      final String host = connector.getHost();
      if (StringUtils.isNotBlank(host)) {
        return "http://" + host + "/" + url;
      }
    }
    return url;
  }
Ejemplo n.º 7
0
  @Override
  public void onCreate(final Bundle savedInstanceState) {
    super.onCreate(savedInstanceState, R.layout.editwaypoint_activity);

    if (StringUtils.isBlank(geocode) && waypointId <= 0) {
      showToast(res.getString(R.string.err_waypoint_cache_unknown));

      finish();
      return;
    }

    if (waypointId <= 0) {
      setTitle(res.getString(R.string.waypoint_add_title));
    } else {
      setTitle(res.getString(R.string.waypoint_edit_title));
    }

    buttonLat.setOnClickListener(new CoordDialogListener());
    buttonLon.setOnClickListener(new CoordDialogListener());

    addWaypoint.setOnClickListener(new SaveWaypointListener());

    final List<String> wayPointNames = new ArrayList<>();
    for (final WaypointType wpt : WaypointType.ALL_TYPES_EXCEPT_OWN_AND_ORIGINAL) {
      wayPointNames.add(wpt.getL10n());
    }
    final ArrayAdapter<String> adapter =
        new ArrayAdapter<>(this, android.R.layout.simple_dropdown_item_1line, wayPointNames);
    waypointName.setAdapter(adapter);

    if (savedInstanceState != null) {
      initViews = false;
    }

    if (geocode != null) {
      cache = DataStore.loadCache(geocode, LoadFlags.LOAD_CACHE_OR_DB);
      setCoordsModificationVisibility(ConnectorFactory.getConnector(geocode), cache);
    }
    if (waypointId > 0) { // existing waypoint
      waitDialog = ProgressDialog.show(this, null, res.getString(R.string.waypoint_loading), true);
      waitDialog.setCancelable(true);

      (new LoadWaypointThread()).start();

    } else { // new waypoint
      initializeWaypointTypeSelector();
    }

    initializeDistanceUnitSelector();

    disableSuggestions(distanceView);
  }
Ejemplo n.º 8
0
  public static cgCache getCache(final String geoCode) {
    final Parameters params = new Parameters("cache_code", geoCode, "fields", SERVICE_CACHE_FIELDS);
    final JSONObject data = request(ConnectorFactory.getConnector(geoCode), SERVICE_CACHE, params);

    if (data == null) {
      return null;
    }

    final cgCache cache = parseCache(data);

    long time = new Date().getTime();
    cache.setUpdated(time);
    cache.setDetailedUpdate(time);

    return cache;
  }
Ejemplo n.º 9
0
  public static Geocache getCache(final String geoCode) {
    final Parameters params = new Parameters("cache_code", geoCode);
    final IConnector connector = ConnectorFactory.getConnector(geoCode);
    if (!(connector instanceof OCApiConnector)) {
      return null;
    }

    final OCApiConnector ocapiConn = (OCApiConnector) connector;

    params.add("fields", getFullFields(ocapiConn));
    params.add("attribution_append", "none");

    final JSONResult result = request(ocapiConn, OkapiService.SERVICE_CACHE, params);

    return result.isSuccess ? parseCache(result.data) : null;
  }
Ejemplo n.º 10
0
  @Nullable
  private String makeAbsoluteURL(final String url) {
    // Check if uri is absolute or not, if not attach the connector hostname
    // FIXME: that should also include the scheme
    if (Uri.parse(url).isAbsolute()) {
      return url;
    }

    final String host = ConnectorFactory.getConnector(geocode).getHost();
    if (StringUtils.isNotEmpty(host)) {
      final StringBuilder builder = new StringBuilder("http://");
      builder.append(host);
      if (!StringUtils.startsWith(url, "/")) {
        // FIXME: explain why the result URL would be valid if the path does not start with
        // a '/', or signal an error.
        builder.append('/');
      }
      builder.append(url);
      return builder.toString();
    }

    return null;
  }
Ejemplo n.º 11
0
 public static void testTrim() {
   assertTrue(
       ConnectorFactory.getConnector("   OZ12345   ") instanceof OCConnector); // opencaching CZ
   assertTrue(ConnectorFactory.getConnector("   OZ 12345   ") instanceof UnknownConnector);
 }
Ejemplo n.º 12
0
 public static void testGetConnectorString() {
   final IConnector connector = ConnectorFactory.getConnector("GC12345");
   assertNotNull(connector);
   assertEquals(GCConnector.getInstance().getName(), connector.getName());
 }
Ejemplo n.º 13
0
 public static void testGetConnectorCgCache() {
   assertEquals(GCConnector.getInstance(), ConnectorFactory.getConnector(new GC1ZXX2()));
 }
Ejemplo n.º 14
0
 private static boolean uploadModifiedCoords(
     final Geocache cache, final Geopoint waypointUploaded) {
   final IConnector con = ConnectorFactory.getConnector(cache);
   return con.supportsOwnCoordinates() && con.uploadModifiedCoordinates(cache, waypointUploaded);
 }
Ejemplo n.º 15
0
 private IConnector getConnector() {
   return ConnectorFactory.getConnector(this);
 }