FOSSology  4.7.1
Open Source License Compliance by Open Source Software
Fossology\Reuser\ReuseFileDiffViewPlugin Class Reference

Display a two-column file diff view for reuse comparison, matching the EnhancedReuser diff view structure. More...

Inheritance diagram for Fossology\Reuser\ReuseFileDiffViewPlugin:
Inheritance graph
Collaboration diagram for Fossology\Reuser\ReuseFileDiffViewPlugin:
Collaboration graph

Public Attributes

const NAME = "reusediffview"
 
- Public Attributes inherited from Fossology\Lib\Plugin\DefaultPlugin
const PERMISSION = "permission"
 
const REQUIRES_LOGIN = "requiresLogin"
 
const ENABLE_MENU = "ENABLE_MENU"
 
const LEVEL = "level"
 
const DEPENDENCIES = "dependencies"
 
const INIT_ORDER = "initOrder"
 
const MENU_LIST = "menuList"
 
const MENU_ORDER = "menuOrder"
 
const MENU_TARGET = "menuTarget"
 
const TITLE = "title"
 
 $fileLogger
 

Protected Member Functions

 handle (Request $request)
 
- Protected Member Functions inherited from Fossology\Lib\Plugin\DefaultPlugin
 RegisterMenus ()
 Customize submenus.
 
 render ($templateName, $vars=null, $headers=null)
 
 getDefaultHeaders ()
 
 getDefaultVars ()
 
 mergeWithDefault ($vars)
 
 flushContent ($content)
 

Private Member Functions

 generateDiff ($pfileA, $pfileB)
 
 parseUnifiedDiff (array $diffLines, array $linesCurrent)
 
 getPfileData ($pfileId)
 
 getScannerFindings ($pfileId)
 
 getClearingDecisionSets ($pfileId, $uploadId)
 

Private Attributes

 $dbManager
 
 $uploadDao
 

Additional Inherited Members

- Public Member Functions inherited from Fossology\Lib\Plugin\DefaultPlugin
 __construct ($name, $parameters=array())
 
 getName ()
 
 getVersion ()
 
 getTitle ()
 
 isRequiresLogin ()
 
 getDependency ()
 
 getPluginLevel ()
 
 getDBaccess ()
 
 getState ()
 
 getInitOrder ()
 
 getNoMenu ()
 
 getResponse ()
 
 getObject ($name)
 
 preInstall ()
 
 postInstall ()
 
 unInstall ()
 
 execute ()
 
 isLoggedIn ()
 
 __get ($name)
 
 __toString ()
 
- Protected Attributes inherited from Fossology\Lib\Plugin\DefaultPlugin
 $container
 
 $renderer
 
 $microMenu
 

Detailed Description

Display a two-column file diff view for reuse comparison, matching the EnhancedReuser diff view structure.

Definition at line 29 of file ReuseFileDiffViewPlugin.php.

Member Function Documentation

◆ generateDiff()

Fossology\Reuser\ReuseFileDiffViewPlugin::generateDiff (   $pfileA,
  $pfileB 
)
private

Generate diff between two pfiles using system diff -u. Handles arbitrarily large files by delegating to C.

Returns
array diff lines

Definition at line 182 of file ReuseFileDiffViewPlugin.php.

◆ getClearingDecisionSets()

Fossology\Reuser\ReuseFileDiffViewPlugin::getClearingDecisionSets (   $pfileId,
  $uploadId 
)
private

Get clearing-decision license sets for a pfile in a specific upload. Returns two arrays: user-added (type_fk=1 USER, removed=false/null) and user-removed (removed=true) from clearing events.

Parameters
int$pfileId
int$uploadId
Returns
array [added[], removed[]]

Definition at line 364 of file ReuseFileDiffViewPlugin.php.

◆ getPfileData()

Fossology\Reuser\ReuseFileDiffViewPlugin::getPfileData (   $pfileId)
private

Get pfile data from DB.

Definition at line 318 of file ReuseFileDiffViewPlugin.php.

◆ getScannerFindings()

Fossology\Reuser\ReuseFileDiffViewPlugin::getScannerFindings (   $pfileId)
private

Get scanner-agent license findings for a pfile.

Parameters
int$pfileId
Returns
string[] License shortnames found by scanners

Definition at line 333 of file ReuseFileDiffViewPlugin.php.

◆ handle()

Fossology\Reuser\ReuseFileDiffViewPlugin::handle ( Request  $request)
protected
Parameters
Request$request
Returns
Response

Reimplemented from Fossology\Lib\Plugin\DefaultPlugin.

Definition at line 54 of file ReuseFileDiffViewPlugin.php.

◆ parseUnifiedDiff()

Fossology\Reuser\ReuseFileDiffViewPlugin::parseUnifiedDiff ( array  $diffLines,
array  $linesCurrent 
)
private

Parse diff -u output into a complete per-line diff, filling in all unchanged lines from the current file content.

Definition at line 237 of file ReuseFileDiffViewPlugin.php.


The documentation for this class was generated from the following file: