Class Fragment


  • public class Fragment
    extends Object
    • Field Detail

      • LOG

        private static final org.slf4j.Logger LOG
      • id

        private int id
      • fragmentParentNode

        private Node fragmentParentNode
      • hdn

        private Node hdn
      • referenceState

        private final StateVertex referenceState
      • isUseful

        private Boolean isUseful
      • accessTransferred

        private boolean accessTransferred
      • size

        private int size
      • isGlobal

        private boolean isGlobal
      • chist

        private org.opencv.core.Mat chist
      • nestedBlocks

        private List<Node> nestedBlocks
      • isDynamic

        private boolean isDynamic
      • candidateInfluence

        private Double candidateInfluence
    • Method Detail

      • getId

        public int getId()
      • setId

        public void setId​(int id2)
      • getSize

        public int getSize()
      • setSize

        public void setSize​(int size)
      • isAccessTransferred

        public boolean isAccessTransferred()
      • setAccessTransferred

        public void setAccessTransferred​(boolean accessTransferred)
      • isUseful

        public Boolean isUseful()
      • setUseful

        public void setUseful​(boolean isUseful)
      • isDynamic

        public boolean isDynamic()
      • setDynamic

        public void setDynamic​(boolean isDynamic)
      • getCandidateInfluence

        public Double getCandidateInfluence()
      • setCandidateInfluence

        public void setCandidateInfluence​(Double candidateInfluence)
      • getNestedBlocks

        public List<Node> getNestedBlocks()
      • setNestedBlocks

        public void setNestedBlocks​(List<Node> nestedBlocks)
      • getParent

        public Fragment getParent()
      • setParent

        public void setParent​(Fragment parent)
      • addChild

        public void addChild​(Fragment child)
      • compareImage

        public boolean compareImage​(Fragment other)
      • getChist

        public org.opencv.core.Mat getChist()
      • setChist

        public void setChist​(org.opencv.core.Mat chist)
      • compare

        public Fragment.FragmentComparision compare​(Fragment other)
        Uses APTED for DOM Tree comparison and Histogram for Visual Comparison Does not check if the other fragment being compared is Near-duplicate of category ND_struct Returns EQUAL if both DOM and Histogram are exactly the same Return EQUIVALENT if DOM is the same but Histogram is not. Returns DIFFERENT if DOM is different
        Parameters:
        other -
        Returns:
      • getFragmentParentNode

        public Node getFragmentParentNode()
      • setFragmentParentNode

        public void setFragmentParentNode​(Node fragmentParentNode)
      • setRect

        public void setRect​(Rectangle rect)
      • getReferenceState

        public StateVertex getReferenceState()
      • addDuplicateFragment

        public void addDuplicateFragment​(Fragment fragment)
      • addEquivalentFragment

        public void addEquivalentFragment​(Fragment fragment)
      • addND2Fragment

        public void addND2Fragment​(Fragment fragment)
      • setIsGlobal

        public void setIsGlobal​(boolean isGlobal)
      • nestedBlockIncludesNode

        private boolean nestedBlockIncludesNode​(Element element)
      • addCandidateElement

        public void addCandidateElement​(CandidateElement element)
      • containsCandidate

        public boolean containsCandidate​(CandidateElement element)
      • isGlobal

        public boolean isGlobal()
      • transferEquivalentAccess

        public void transferEquivalentAccess​(Fragment oldFragment)
      • transferDuplicateAccess

        public void transferDuplicateAccess​(Fragment oldFragment)
        For new fragments that have not been access transferred Called for every other duplicate fragment ( to avoid candidate element not being all fragment problem)
        Parameters:
        oldFragment -
      • containsNode

        public boolean containsNode​(Node node)
      • containsRectangle

        private boolean containsRectangle​(Rectangle rect2)
      • getDomParent

        public Fragment getDomParent()
      • setDomParent

        public void setDomParent​(Fragment domParent)
      • addDomChildren

        public void addDomChildren​(Fragment fragment)
      • getEquivalentNode

        public Node getEquivalentNode​(Node element,
                                      Fragment duplicateFragment)
        Uses relative Xpath to fetch node that is similar in the current fragment to the one provided as argument
        Parameters:
        element -
        duplicateFragment -
        Returns:
      • transferCoverage

        public void transferCoverage​(Fragment oldFragment)
      • getHdn

        public Node getHdn()
      • setHdn

        public void setHdn​(Node hdn)