Codota Logo
SootClass.isApplicationClass
Code IndexAdd Codota to your IDE (free)

How to use
isApplicationClass
method
in
soot.SootClass

Best Java code snippets using soot.SootClass.isApplicationClass (Showing top 20 results out of 315)

  • Common ways to obtain SootClass
private void myMethod () {
SootClass s =
  • Codota IconString className;Scene.v().getSootClass(className)
  • Codota IconSootMethod sm;sm.getDeclaringClass()
  • Codota IconRefType refType;refType.getSootClass()
  • Smart code suggestions by Codota
}
origin: Sable/soot

private void complexity() {
 if (!method.jmethod.getDeclaringClass().isApplicationClass()) {
  return;
origin: Sable/soot

public List<SootClass> getThreadClassList() {
 if (optionThreaded) {
  if (self == null) {
   return null; // not run... do nothing
  }
  // Wait until finished
  logger.debug("[mhp] waiting for thread to finish");
  try {
   self.join();
  } catch (InterruptedException ie) {
   return null;
  }
 }
 if (threadList == null) {
  return null;
 }
 List<SootClass> threadClasses = new ArrayList<SootClass>();
 int size = threadList.size();
 for (int i = 0; i < size; i++) {
  AbstractRuntimeThread thread = threadList.get(i);
  Iterator<Object> threadRunMethodIt = thread.getRunMethods().iterator();
  while (threadRunMethodIt.hasNext()) {
   SootClass threadClass = ((SootMethod) threadRunMethodIt.next()).getDeclaringClass(); // what about subclasses???
   if (!threadClasses.contains(threadClass) && threadClass.isApplicationClass()) {
    threadClasses.add(threadClass);
   }
  }
 }
 return threadClasses;
}
origin: Sable/soot

/**
 * Modifies code so that an access to <code>target</code> is legal from code in <code>container</code>.
 */
public static boolean ensureAccess(SootMethod container, SootClass target, String options) {
 boolean accessors = options.equals("accessors");
 boolean allowChanges = !(options.equals("none"));
 boolean safeChangesOnly = !(options.equals("unsafe"));
 if (isAccessLegal(container, target)) {
  return true;
 }
 if (!allowChanges && !accessors) {
  return false;
 }
 if (safeChangesOnly && !accessors) {
  throw new RuntimeException("Not implemented yet!");
 }
 if (accessors) {
  return false;
 }
 if (target.isApplicationClass()) {
  target.setModifiers(target.getModifiers() | Modifier.PUBLIC);
  return true;
 } else {
  return false;
 }
}
origin: Sable/soot

SootMethod runMethod = (SootMethod) meth;
if (runMethod.getDeclaringClass().isApplicationClass() && !isObjectLocalToContext(localOrRef, sm, runMethod)) {
 if (printDebug) {
  logger.debug("  THREAD-SHARED (simpledfa " + ClassInfoFlowAnalysis.methodCount + " smartdfa "
origin: Sable/soot

public void precompute() {
 for (AbstractRuntimeThread thread : threads) {
  for (Object item : thread.getRunMethods()) {
   SootMethod runMethod = (SootMethod) item;
   if (runMethod.getDeclaringClass().isApplicationClass()) {
    getClassLocalObjectsAnalysis(runMethod.getDeclaringClass());
   }
  }
 }
}
origin: Sable/soot

if (sm.isConcrete() && sm.getDeclaringClass().isApplicationClass()) {
 if (!chain.contains(sm)) {
  chain.add(sm);
  if (target.isConcrete() && target.getDeclaringClass().isApplicationClass()) {
   succsList.add(target);
   if (!chain.contains(target)) {
origin: Sable/soot

private void constantForName(String cls, SootMethod src, Stmt srcUnit) {
 if (cls.length() > 0 && cls.charAt(0) == '[') {
  if (cls.length() > 1 && cls.charAt(1) == 'L' && cls.charAt(cls.length() - 1) == ';') {
   cls = cls.substring(2, cls.length() - 1);
   constantForName(cls, src, srcUnit);
  }
 } else {
  if (!Scene.v().containsClass(cls)) {
   if (options.verbose()) {
    logger.warn("Class " + cls + " is" + " a dynamic class, and you did not specify"
      + " it as such; graph will be incomplete!");
   }
  } else {
   SootClass sootcls = Scene.v().getSootClass(cls);
   if (!sootcls.isPhantomClass()) {
    if (!sootcls.isApplicationClass()) {
     sootcls.setLibraryClass();
    }
    for (SootMethod clinit : EntryPoints.v().clinitsOf(sootcls)) {
     addEdge(src, srcUnit, clinit, Kind.CLINIT);
    }
   }
  }
 }
}
origin: Sable/soot

if (target.getDeclaringClass().isApplicationClass()) {
 if (accessors) {
  return true;
origin: Sable/soot

if (!sootcls.isApplicationClass() && !sootcls.isPhantom()) {
 sootcls.setLibraryClass();
origin: Sable/soot

Chain<SootClass> getContainingChain(SootClass c) {
 if (c.isApplicationClass()) {
  return getApplicationClasses();
 } else if (c.isLibraryClass()) {
  return getLibraryClasses();
 } else if (c.isPhantomClass()) {
  return getPhantomClasses();
 }
 return null;
}
origin: Sable/soot

if (superclass.isApplicationClass()) {
 externalMethods.addAll(uf.getExtMethods(superclass));
if (superclass.isApplicationClass()) {
 externalFields.addAll(uf.getExtFields(superclass));
origin: Sable/soot

for (Iterator edgesIt = Scene.v().getCallGraph().edgesOutOf(containingMethod); edgesIt.hasNext();) {
 Edge e = (Edge) edgesIt.next();
 if (!e.src().getDeclaringClass().isApplicationClass() || e.srcStmt() == null) {
  continue;
origin: Sable/soot

/** Makes this class an application class. */
public void setApplicationClass() {
 if (isApplicationClass()) {
  return;
 }
 Chain<SootClass> c = Scene.v().getContainingChain(this);
 if (c != null) {
  c.remove(this);
 }
 Scene.v().getApplicationClasses().add(this);
 isPhantom = false;
}
origin: Sable/soot

protected boolean parameterIsLocal(SootMethod method, EquivalentValue parameterRef,
  boolean includePrimitiveDataFlowIfAvailable) {
 if (dfa.printDebug() && method.getDeclaringClass().isApplicationClass()) {
  logger.debug("        Checking PARAM " + parameterRef + " for " + method);
  if (dfa.printDebug() && method.getDeclaringClass().isApplicationClass()) {
   logger.debug("          PARAM is local (primitive)");
  Stmt s = (Stmt) extCall.getO2();
  if (s.getInvokeExpr().getMethodRef().resolve() == method) {
   if (dfa.printDebug() && method.getDeclaringClass().isApplicationClass()) {
    logger.debug("          PARAM is shared (external access)");
     if (dfa.printDebug() && method.getDeclaringClass().isApplicationClass()) {
      logger.debug("          PARAM is shared (internal propagation)");
      if (dfa.printDebug() && method.getDeclaringClass().isApplicationClass()) {
       logger.debug("          PARAM is shared (internal propagation)");
 if (dfa.printDebug() && method.getDeclaringClass().isApplicationClass()) {
  logger.debug("          PARAM is local SO FAR (internal propagation)");
origin: Sable/soot

public void processReachables() {
 while (true) {
  if (!worklist.hasNext()) {
   rm.update();
   if (!worklist.hasNext()) {
    break;
   }
  }
  MethodOrMethodContext momc = worklist.next();
  SootMethod m = momc.method();
  if (appOnly && !m.getDeclaringClass().isApplicationClass()) {
   continue;
  }
  if (analyzedMethods.add(m)) {
   processNewMethod(m);
  }
  processNewMethodContext(momc);
 }
}
origin: Sable/soot

if (!target.getDeclaringClass().isApplicationClass() || !target.isConcrete()) {
 continue;
origin: Sable/soot

public void removeClass(SootClass c) {
 if (!c.isInScene()) {
  throw new RuntimeException();
 }
 classes.remove(c);
 if (c.isLibraryClass()) {
  libraryClasses.remove(c);
 } else if (c.isPhantomClass()) {
  phantomClasses.remove(c);
 } else if (c.isApplicationClass()) {
  applicationClasses.remove(c);
 }
 c.getType().setSootClass(null);
 c.setInScene(false);
 modifyHierarchy();
}
origin: Sable/soot

  = getMethodInfoFlowSummary(target, context.getDeclaringClass().isApplicationClass());
if (ret == null) {
 ret = ifs;
origin: Sable/soot

 continue;
if (s.isApplicationClass() && isExcluded(s)) {
 s.setLibraryClass();
 s.setApplicationClass();
if (s.isApplicationClass()) {
origin: Sable/soot

if (runMethod.getDeclaringClass().isApplicationClass()
  && !isObjectLocalToContext(sharedValue, containingMethod, runMethod)) {
sootSootClassisApplicationClass

Javadoc

Convenience method returning true if this class is an application class.

Popular methods of SootClass

  • isInterface
    Convenience method; returns true if this class is an interface.
  • getMethods
  • getName
    Returns the name of this class.
  • setApplicationClass
    Makes this class an application class.
  • getFields
    Returns a backed Chain of fields.
  • getInterfaces
    Returns a backed Chain of the interfaces that are directly implemented by this class. (see getInterf
  • getSuperclass
    WARNING: interfaces are subclasses of the java.lang.Object class! Returns the superclass of this cla
  • hasSuperclass
    WARNING: interfaces are subclasses of the java.lang.Object class! Does this class have a superclass?
  • resolvingLevel
  • addMethod
    Adds the given method to this class.
  • declaresMethod
    Does this class declare a method with the given subsignature?
  • getMethod
  • declaresMethod,
  • getMethod,
  • getType,
  • isLibraryClass,
  • addField,
  • isAbstract,
  • isPhantom,
  • <init>,
  • declaresField

Popular in Java

  • Running tasks concurrently on multiple threads
  • getContentResolver (Context)
  • addToBackStack (FragmentTransaction)
  • runOnUiThread (Activity)
  • Pointer (com.sun.jna)
    An abstraction for a native pointer data type. A Pointer instance represents, on the Java side, a na
  • BufferedReader (java.io)
    Reads text from a character-input stream, buffering characters so as to provide for the efficient re
  • SecureRandom (java.security)
    This class generates cryptographically secure pseudo-random numbers. It is best to invoke SecureRand
  • Servlet (javax.servlet)
    Defines methods that all servlets must implement.A servlet is a small Java program that runs within
  • JTextField (javax.swing)
  • Join (org.hibernate.mapping)
Codota Logo
  • Products

    Search for Java codeSearch for JavaScript codeEnterprise
  • IDE Plugins

    IntelliJ IDEAWebStormAndroid StudioEclipseVisual Studio CodePyCharmSublime TextPhpStormVimAtomGoLandRubyMineEmacsJupyter
  • Company

    About UsContact UsCareers
  • Resources

    FAQBlogCodota Academy Plugin user guide Terms of usePrivacy policyJava Code IndexJavascript Code Index
Get Codota for your IDE now