mirror of https://github.com/MISP/MISP
Merge branch 'develop' of github.com:MISP/MISP into develop
commit
30e8aa454a
|
@ -217,7 +217,7 @@ class ServerSyncTool
|
|||
}
|
||||
|
||||
/**
|
||||
* @param array $rules
|
||||
* @param array $candidates
|
||||
* @return HttpSocketResponseExtended
|
||||
* @throws HttpSocketHttpException
|
||||
* @throws HttpSocketJsonException
|
||||
|
@ -225,7 +225,7 @@ class ServerSyncTool
|
|||
public function filterAnalystDataForPush(array $candidates)
|
||||
{
|
||||
if (!$this->isSupported(self::PERM_ANALYST_DATA)) {
|
||||
return [];
|
||||
throw new RuntimeException("Remote server do not support analyst data");
|
||||
}
|
||||
|
||||
return $this->post('/analyst_data/filterAnalystDataForPush', $candidates);
|
||||
|
@ -240,20 +240,23 @@ class ServerSyncTool
|
|||
public function fetchIndexMinimal(array $rules)
|
||||
{
|
||||
if (!$this->isSupported(self::PERM_ANALYST_DATA)) {
|
||||
return [];
|
||||
throw new RuntimeException("Remote server do not support analyst data");
|
||||
}
|
||||
|
||||
return $this->post('/analyst_data/indexMinimal', $rules);
|
||||
}
|
||||
|
||||
/**
|
||||
* @param string $type
|
||||
* @param array $uuids
|
||||
* @return HttpSocketResponseExtended
|
||||
* @throws HttpSocketJsonException
|
||||
* @throws HttpSocketHttpException
|
||||
*/
|
||||
public function fetchAnalystData($type, array $uuids)
|
||||
{
|
||||
if (!$this->isSupported(self::PERM_ANALYST_DATA)) {
|
||||
return [];
|
||||
throw new RuntimeException("Remote server do not support analyst data");
|
||||
}
|
||||
|
||||
$params = [
|
||||
|
@ -264,12 +267,10 @@ class ServerSyncTool
|
|||
$url .= $this->createParams($params);
|
||||
$url .= '.json';
|
||||
return $this->get($url);
|
||||
|
||||
// $response = $this->post('/analyst_data/restSearch' , $params);
|
||||
// return $response->json();
|
||||
}
|
||||
|
||||
/**
|
||||
/**
|
||||
* @param string $type
|
||||
* @param array $analystData
|
||||
* @return HttpSocketResponseExtended
|
||||
* @throws HttpSocketHttpException
|
||||
|
|
|
@ -1007,9 +1007,14 @@ class AnalystData extends AppModel
|
|||
*
|
||||
* @param array $user
|
||||
* @param ServerSyncTool $serverSync
|
||||
* @return int Number of saved analysis
|
||||
*/
|
||||
public function pull(array $user, ServerSyncTool $serverSync)
|
||||
{
|
||||
if (!$serverSync->isSupported(ServerSyncTool::PERM_ANALYST_DATA)) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
$this->Server = ClassRegistry::init('Server');
|
||||
$this->AnalystData = ClassRegistry::init('AnalystData');
|
||||
try {
|
||||
|
@ -1051,14 +1056,11 @@ class AnalystData extends AppModel
|
|||
return 0;
|
||||
}
|
||||
|
||||
if ($serverSync->isSupported(ServerSyncTool::PERM_ANALYST_DATA)) {
|
||||
return $this->pullInChunks($user, $remoteUUIDsToFetch, $serverSync);
|
||||
}
|
||||
return $this->pullInChunks($user, $remoteUUIDsToFetch, $serverSync);
|
||||
}
|
||||
|
||||
public function pullInChunks(array $user, array $analystDataUuids, ServerSyncTool $serverSync)
|
||||
private function pullInChunks(array $user, array $analystDataUuids, ServerSyncTool $serverSync)
|
||||
{
|
||||
$uuids = array_keys($analystDataUuids);
|
||||
$saved = 0;
|
||||
$serverOrgUUID = $this->Org->find('first', [
|
||||
'recursive' => -1,
|
||||
|
|
Loading…
Reference in New Issue