public synchronized TypeNameMatch[] getFilteredTypeInfos(TypeInfoFilter filter) {
   Collection values = getValues();
   List result = new ArrayList();
   for (Iterator iter = values.iterator(); iter.hasNext(); ) {
     TypeNameMatch type = (TypeNameMatch) iter.next();
     if ((filter == null || filter.matchesHistoryElement(type))
         && !TypeFilter.isFiltered(type.getFullyQualifiedName())) result.add(type);
   }
   Collections.reverse(result);
   return (TypeNameMatch[]) result.toArray(new TypeNameMatch[result.size()]);
 }
Ejemplo n.º 2
0
 private void scanFile(File file) {
   String path = file.getAbsolutePath();
   if (TypeFilter.isMusicFile(path)) {
     /*
      * notify the media to scan
      */
     Uri mUri = Uri.fromFile(file);
     Intent mIntent = new Intent();
     mIntent.setData(mUri);
     mIntent.setAction(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE);
     context.sendBroadcast(mIntent);
   }
 }
Ejemplo n.º 3
0
        @Override
        public boolean accept(File pathname) {
          // TODO Auto-generated method stub
          // keep all needed files
          try {
            if (pathname.isDirectory()) {
              filesNum++;
              return true;
            }
          } catch (SecurityException e) {
            e.printStackTrace();
            return false;
          }

          String name = pathname.getAbsolutePath();
          if (TypeFilter.isPictureFile(name)) {
            filesNum++;
            return true;
          }

          return false;
        }
Ejemplo n.º 4
0
    private View getView_tree(int position, View convertView, ViewGroup parent) {
      ViewHolder holder;
      int num_items = 0;
      String temp = mFileMang.getCurrentDir();
      File file = new File(temp + "/" + mDataSource.get(position));
      String[] list = file.list();

      if (list != null) num_items = list.length;

      if (convertView == null) {
        LayoutInflater inflater =
            (LayoutInflater) mContext.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
        convertView = inflater.inflate(R.layout.tablerow, parent, false);

        holder = new ViewHolder();
        holder.topView = (TextView) convertView.findViewById(R.id.top_view);
        holder.bottomView = (TextView) convertView.findViewById(R.id.bottom_view);
        holder.icon = (ImageView) convertView.findViewById(R.id.row_image);
        holder.mSelect = (ImageView) convertView.findViewById(R.id.multiselect_icon);

        convertView.setTag(holder);
      } else {
        holder = (ViewHolder) convertView.getTag();
      }

      /* This will check if the thumbnail cache needs to be cleared by checking
       * if the user has changed directories. This way the cache wont show
       * a wrong thumbnail image for the new image file
       */
      if (!dir_name.equals(temp) && thumbnail_flag) {
        thumbnail.clearBitmapCache();
        dir_name = temp;
      }

      if (positions != null && positions.contains(position))
        holder.mSelect.setVisibility(ImageView.VISIBLE);
      else holder.mSelect.setVisibility(ImageView.GONE);

      holder.topView.setTextColor(mColor);
      holder.bottomView.setTextColor(mColor);

      if (file != null && file.isFile()) {
        String ext = file.toString();
        String sub_ext = ext.substring(ext.lastIndexOf(".") + 1);

        /* This series of else if statements will determine which
         * icon is displayed
         */
        if (TypeFilter.getInstance().isPdfFile(sub_ext)) {
          holder.icon.setImageResource(R.drawable.pdf);

        } else if (TypeFilter.getInstance().isMusicFile(sub_ext)) {
          holder.icon.setImageResource(R.drawable.music);

        } else if (TypeFilter.getInstance().isPictureFile(sub_ext)) {
          if (thumbnail_flag && file.length() != 0) {
            Bitmap thumb = thumbnail.hasBitmapCached(position);
            boolean isJPG = false;
            if (sub_ext.equalsIgnoreCase("jpeg") || sub_ext.equalsIgnoreCase("jpg")) {
              isJPG = true;
            }
            if (thumb == null) {
              holder.icon.setImageResource(R.drawable.image);
              final Handler mHandler = new Handler();
              thumbnail.setBitmapToImageView(
                  file.getPath(), mHandler, holder.icon, isJPG, position);

            } else {
              holder.icon.setImageBitmap(thumb);
            }

          } else {
            holder.icon.setImageResource(R.drawable.image);
          }

        } else if (TypeFilter.getInstance().isZipFile(sub_ext)
            || TypeFilter.getInstance().isGZipFile(sub_ext)
            || TypeFilter.getInstance().isRarFile(sub_ext)) {
          holder.icon.setImageResource(R.drawable.zip);

        } else if (TypeFilter.getInstance().isMovieFile(sub_ext)) {
          holder.icon.setImageResource(R.drawable.movies);

        } else if (TypeFilter.getInstance().isWordFile(sub_ext)) {
          holder.icon.setImageResource(R.drawable.word);

        } else if (TypeFilter.getInstance().isExcelFile(sub_ext)) {
          holder.icon.setImageResource(R.drawable.excel);

        } else if (TypeFilter.getInstance().isPptFile(sub_ext)) {
          holder.icon.setImageResource(R.drawable.ppt);

        } else if (TypeFilter.getInstance().isHtml32File(sub_ext)) {
          holder.icon.setImageResource(R.drawable.html32);

        } else if (TypeFilter.getInstance().isXml32File(sub_ext)) {
          holder.icon.setImageResource(R.drawable.xml32);

        } else if (TypeFilter.getInstance().isConfig32File(sub_ext)) {
          holder.icon.setImageResource(R.drawable.config32);

        } else if (TypeFilter.getInstance().isApkFile(sub_ext)) {
          holder.icon.setImageDrawable(getApkIcon(ext, mContext));

        } else if (TypeFilter.getInstance().isJarFile(sub_ext)) {
          holder.icon.setImageResource(R.drawable.jar32);

        } else if (TypeFilter.getInstance().isTxtFile(sub_ext)) {
          holder.icon.setImageResource(R.drawable.text);
        } else if (TypeFilter.getInstance().isPadFile(sub_ext)) {
          holder.icon.setImageResource(R.drawable.text);
        } else {
          holder.icon.setImageResource(R.drawable.config32);
        }

      } else if (file != null && file.isDirectory()) {
        holder.icon.setImageResource(R.drawable.folder);
      } else {
        holder.icon.setImageResource(R.drawable.text);
      }
      String permission = getFilePermissions(file);

      if (file.isFile()) {
        double size = file.length();
        if (size > GB) display_size = String.format("%.2f Gb ", (double) size / GB);
        else if (size < GB && size > MG)
          display_size = String.format("%.2f Mb ", (double) size / MG);
        else if (size < MG && size > KB)
          display_size = String.format("%.2f Kb ", (double) size / KB);
        else display_size = String.format("%.2f bytes ", (double) size);

        if (file.isHidden())
          holder.bottomView.setText("(hidden) | " + display_size + " | " + permission);
        else holder.bottomView.setText(display_size + " | " + permission);

      } else {
        if (file.isHidden())
          holder.bottomView.setText("(hidden) | " + num_items + " items | " + permission);
        else holder.bottomView.setText(num_items + " items | " + permission);
      }

      holder.topView.setText(file.getName());

      return convertView;
    }
Ejemplo n.º 5
0
    private View getView_catalog(int position, View convertView, ViewGroup parent) {
      ViewHolder holder;
      File file = new File(mDataSource.get(position));

      if (convertView == null) {
        LayoutInflater inflater =
            (LayoutInflater) mContext.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
        convertView = inflater.inflate(R.layout.tablerow, parent, false);

        holder = new ViewHolder();
        holder.topView = (TextView) convertView.findViewById(R.id.top_view);
        holder.bottomView = (TextView) convertView.findViewById(R.id.bottom_view);
        holder.icon = (ImageView) convertView.findViewById(R.id.row_image);
        holder.mSelect = (ImageView) convertView.findViewById(R.id.multiselect_icon);

        convertView.setTag(holder);
      } else {
        holder = (ViewHolder) convertView.getTag();
      }

      if (positions != null && positions.contains(position))
        holder.mSelect.setVisibility(ImageView.VISIBLE);
      else holder.mSelect.setVisibility(ImageView.GONE);

      holder.topView.setTextColor(mColor);
      holder.bottomView.setTextColor(mColor);

      if (file != null && file.isFile()) {
        String ext = file.toString();
        String sub_ext = ext.substring(ext.lastIndexOf(".") + 1);

        /* This series of else if statements will determine which
         * icon is displayed
         */
        if (TypeFilter.getInstance().isPdfFile(sub_ext)) {
          holder.icon.setImageResource(R.drawable.pdf);

        } else if (TypeFilter.getInstance().isMusicFile(sub_ext)) {
          holder.icon.setImageResource(R.drawable.music);

        } else if (TypeFilter.getInstance().isPictureFile(sub_ext)) {
          if (thumbnail_flag && file.length() != 0) {
            Bitmap thumb = thumbnail.hasBitmapCached(position);
            if (thumb == null) {

              holder.icon.setImageResource(R.drawable.image);
              final Handler mHandler = new Handler();
              boolean isJPG = false;
              if (sub_ext.equalsIgnoreCase("jpeg") || sub_ext.equalsIgnoreCase("jpg")) {
                isJPG = true;
              }
              thumbnail.setBitmapToImageView(
                  file.getPath(), mHandler, holder.icon, isJPG, position);

            } else {
              holder.icon.setImageBitmap(thumb);
            }

          } else {
            holder.icon.setImageResource(R.drawable.image);
          }

        } else if (TypeFilter.getInstance().isMovieFile(sub_ext)) {
          holder.icon.setImageResource(R.drawable.movies);

        } else if (TypeFilter.getInstance().isTxtFile(sub_ext)) {
          holder.icon.setImageResource(R.drawable.text);
        } else if (TypeFilter.getInstance().isWordFile(sub_ext)) {
          holder.icon.setImageResource(R.drawable.word);
        } else if (TypeFilter.getInstance().isExcelFile(sub_ext)) {
          holder.icon.setImageResource(R.drawable.excel);
        } else if (TypeFilter.getInstance().isPptFile(sub_ext)) {
          holder.icon.setImageResource(R.drawable.ppt);
        } else if (TypeFilter.getInstance().isApkFile(sub_ext)) {
          holder.icon.setImageDrawable(getApkIcon(ext, mContext));
        } else {
          holder.icon.setImageResource(R.drawable.text);
        }
      }

      String permission = getFilePermissions(file);

      if (file.isFile()) {
        double size = file.length();
        if (size > GB) display_size = String.format("%.2f Gb ", (double) size / GB);
        else if (size < GB && size > MG)
          display_size = String.format("%.2f Mb ", (double) size / MG);
        else if (size < MG && size > KB)
          display_size = String.format("%.2f Kb ", (double) size / KB);
        else display_size = String.format("%.2f bytes ", (double) size);

        if (file.isHidden())
          holder.bottomView.setText("(hidden) | " + display_size + " | " + permission);
        else holder.bottomView.setText(display_size + " | " + permission);
      }

      holder.topView.setText(file.getName());

      return convertView;
    }
Ejemplo n.º 6
0
  private <T extends ObjectFilter> Restriction findAndCreateRestrictionInternal(
      T filter,
      InterpretationContext context,
      Restriction parent,
      ItemPathResolver resolver,
      JpaEntityDefinition baseEntityDefinition)
      throws QueryException {

    // the order of processing restrictions can be important, so we do the selection via handwritten
    // code

    if (filter instanceof AndFilter) {
      return new AndRestriction(context, (AndFilter) filter, baseEntityDefinition, parent);
    } else if (filter instanceof OrFilter) {
      return new OrRestriction(context, (OrFilter) filter, baseEntityDefinition, parent);
    } else if (filter instanceof NotFilter) {
      return new NotRestriction(context, (NotFilter) filter, baseEntityDefinition, parent);
    } else if (filter instanceof InOidFilter) {
      return new InOidRestriction(context, (InOidFilter) filter, baseEntityDefinition, parent);
    } else if (filter instanceof OrgFilter) {
      return new OrgRestriction(context, (OrgFilter) filter, baseEntityDefinition, parent);
    } else if (filter instanceof TypeFilter) {
      TypeFilter typeFilter = (TypeFilter) filter;
      JpaEntityDefinition refinedEntityDefinition =
          resolver.findRestrictedEntityDefinition(baseEntityDefinition, typeFilter.getType());
      return new TypeRestriction(context, typeFilter, refinedEntityDefinition, parent);
    } else if (filter instanceof ExistsFilter) {
      ExistsFilter existsFilter = (ExistsFilter) filter;
      ItemPath path = existsFilter.getFullPath();
      ItemDefinition definition = existsFilter.getDefinition();
      ProperDataSearchResult<JpaEntityDefinition> searchResult =
          resolver.findProperDataDefinition(
              baseEntityDefinition, path, definition, JpaEntityDefinition.class);
      if (searchResult == null) {
        throw new QueryException(
            "Path for ExistsFilter ("
                + path
                + ") doesn't point to a hibernate entity within "
                + baseEntityDefinition);
      }
      return new ExistsRestriction(
          context, existsFilter, searchResult.getEntityDefinition(), parent);
    } else if (filter instanceof RefFilter) {
      RefFilter refFilter = (RefFilter) filter;
      ItemPath path = refFilter.getFullPath();
      ItemDefinition definition = refFilter.getDefinition();
      ProperDataSearchResult<JpaReferenceDefinition> searchResult =
          resolver.findProperDataDefinition(
              baseEntityDefinition, path, definition, JpaReferenceDefinition.class);
      if (searchResult == null) {
        throw new QueryException(
            "Path for RefFilter ("
                + path
                + ") doesn't point to a reference item within "
                + baseEntityDefinition);
      }
      return new ReferenceRestriction(
          context,
          refFilter,
          searchResult.getEntityDefinition(),
          parent,
          searchResult.getLinkDefinition());
    } else if (filter instanceof PropertyValueFilter) {
      PropertyValueFilter valFilter = (PropertyValueFilter) filter;
      ItemPath path = valFilter.getFullPath();
      ItemDefinition definition = valFilter.getDefinition();

      ProperDataSearchResult<JpaPropertyDefinition> propDefRes =
          resolver.findProperDataDefinition(
              baseEntityDefinition, path, definition, JpaPropertyDefinition.class);
      if (propDefRes == null) {
        throw new QueryException(
            "Couldn't find a proper restriction for a ValueFilter: " + valFilter.debugDump());
      }
      // TODO can't be unified?
      if (propDefRes.getTargetDefinition() instanceof JpaAnyPropertyDefinition) {
        return new AnyPropertyRestriction(
            context,
            valFilter,
            propDefRes.getEntityDefinition(),
            parent,
            propDefRes.getLinkDefinition());
      } else {
        return new PropertyRestriction(
            context,
            valFilter,
            propDefRes.getEntityDefinition(),
            parent,
            propDefRes.getLinkDefinition());
      }
    } else if (filter instanceof NoneFilter
        || filter instanceof AllFilter
        || filter instanceof UndefinedFilter) {
      // these should be filtered out by the client
      throw new IllegalStateException(
          "Trivial filters are not supported by QueryInterpreter: " + filter.debugDump());
    } else {
      throw new IllegalStateException("Unknown filter: " + filter.debugDump());
    }
  }
 public void removeTypeToFilter(org.eclipse.emf.ecore.EClass typeToNotFilter) {
   typeFilter.getFilteredTypes().remove(typeToNotFilter);
 }
 public void addTypeToFilter(org.eclipse.emf.ecore.EClass typeToFilter) {
   typeFilter.getFilteredTypes().add(typeToFilter);
 }