/** * Copies a {@link SnakGroup}. * * @param object * object to copy * @return copied object */ public SnakGroup copy(SnakGroup object) { List<Snak> snaks = new ArrayList<>(object.size()); for (Snak snak : object) { snaks.add(copy(snak)); } return dataObjectFactory.getSnakGroup(snaks); }
/** * Copies a {@link SnakGroup}. * * @param object * object to copy * @return copied object */ public SnakGroup copy(SnakGroup object) { List<Snak> snaks = new ArrayList<>(object.size()); for (Snak snak : object) { snaks.add(copy(snak)); } return dataObjectFactory.getSnakGroup(snaks); }
/** * Count the statements and property uses of an item or property document. * * @param usageStatistics * statistics object to store counters in * @param statementDocument * document to count the statements of */ protected void countStatements(UsageStatistics usageStatistics, StatementDocument statementDocument) { // Count Statement data: for (StatementGroup sg : statementDocument.getStatementGroups()) { // Count Statements: usageStatistics.countStatements += sg.size(); // Count uses of properties in Statements: countPropertyMain(usageStatistics, sg.getProperty(), sg.size()); for (Statement s : sg) { for (SnakGroup q : s.getQualifiers()) { countPropertyQualifier(usageStatistics, q.getProperty(), q.size()); } for (Reference r : s.getReferences()) { usageStatistics.countReferencedStatements++; for (SnakGroup snakGroup : r.getSnakGroups()) { countPropertyReference(usageStatistics, snakGroup.getProperty(), snakGroup.size()); } } } } }