Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

UI improvements #9773

Merged
merged 62 commits into from
Feb 6, 2025
Merged
Show file tree
Hide file tree
Changes from 14 commits
Commits
Show all changes
62 commits
Select commit Hold shift + click to select a range
eccb2e3
Show Usage Server configuration in a separate pane
abh1sar Oct 1, 2024
fb46785
UI: Option to attach volume to an instance during create volume
abh1sar Oct 2, 2024
c087de4
Merge branch '4.19'
DaanHoogland Oct 2, 2024
0a097c4
Show service ip in management server details tab
abh1sar Oct 3, 2024
0d024c3
change Schedule Snapshots to Recurring Snapshots
abh1sar Oct 3, 2024
f53092e
Change the hypervisor order so that kvm, vmware, xenserver show up first
abh1sar Oct 3, 2024
a79b603
Remove extra space in hypervisor names in config.java
abh1sar Oct 4, 2024
d6181d5
Fix `updateTemplatePermission` when the UI is set to a language other…
lucas-a-martins Oct 4, 2024
e666800
Autofill vcenter details in add cluster form
abh1sar Oct 6, 2024
88ad004
UI: condition to display create vm-vol-snapshots to same as create vo…
abh1sar Oct 6, 2024
8fdfbdd
Merge remote-tracking branch 'upstream/main' into ui-improv
abh1sar Oct 10, 2024
c2174f4
Fix alignment on wrapping in global settings tabs
abh1sar Oct 18, 2024
e0fe1c7
rename Autofill vCenter credentials to Autofill vCenter credentials f…
abh1sar Oct 18, 2024
90f8300
Rename Service Ip to Ip Address in management server response
abh1sar Oct 18, 2024
b6ae5fa
Change description of kvm.snapshot.enabled to say that it applies to …
abh1sar Oct 18, 2024
df6672d
Return error when kvm vm snapshot is taken withoutsnapshot memory
abh1sar Oct 22, 2024
5224243
Minor naming changes and grammar
abh1sar Oct 23, 2024
cd1fa9e
Merge remote-tracking branch 'upstream/main' into ui-improv
abh1sar Oct 23, 2024
320b7f0
Fix tooltip for attach volume to instance button
abh1sar Oct 29, 2024
e289502
Merge branch 'main' into ui-improv
borisstoyanov Nov 13, 2024
e3991bf
Show Usage Server configuration in a separate pane
abh1sar Oct 1, 2024
f97321c
UI: Option to attach volume to an instance during create volume
abh1sar Oct 2, 2024
0acaa77
Show service ip in management server details tab
abh1sar Oct 3, 2024
019b8dd
change Schedule Snapshots to Recurring Snapshots
abh1sar Oct 3, 2024
4d198ee
Change the hypervisor order so that kvm, vmware, xenserver show up first
abh1sar Oct 3, 2024
79203b6
Remove extra space in hypervisor names in config.java
abh1sar Oct 4, 2024
1086c42
Autofill vcenter details in add cluster form
abh1sar Oct 6, 2024
a352c47
UI: condition to display create vm-vol-snapshots to same as create vo…
abh1sar Oct 6, 2024
5b9df20
Fix alignment on wrapping in global settings tabs
abh1sar Oct 18, 2024
2d936d9
rename Autofill vCenter credentials to Autofill vCenter credentials f…
abh1sar Oct 18, 2024
4f5edd5
Rename Service Ip to Ip Address in management server response
abh1sar Oct 18, 2024
0488e17
Change description of kvm.snapshot.enabled to say that it applies to …
abh1sar Oct 18, 2024
d0f044f
Return error when kvm vm snapshot is taken withoutsnapshot memory
abh1sar Oct 22, 2024
f694d2f
Minor naming changes and grammar
abh1sar Oct 23, 2024
2919d53
Fix tooltip for attach volume to instance button
abh1sar Oct 29, 2024
416e78d
Merge branch 'ui-improv' of https://github.com/abh1sar/cloudstack int…
abh1sar Dec 1, 2024
8d79c4c
Show Usage Server configuration in a separate pane
abh1sar Oct 1, 2024
92a8896
UI: Option to attach volume to an instance during create volume
abh1sar Oct 2, 2024
dc85057
Show service ip in management server details tab
abh1sar Oct 3, 2024
5957396
change Schedule Snapshots to Recurring Snapshots
abh1sar Oct 3, 2024
e6ec31a
Change the hypervisor order so that kvm, vmware, xenserver show up first
abh1sar Oct 3, 2024
feb4791
Remove extra space in hypervisor names in config.java
abh1sar Oct 4, 2024
eac913d
Autofill vcenter details in add cluster form
abh1sar Oct 6, 2024
8b362f0
UI: condition to display create vm-vol-snapshots to same as create vo…
abh1sar Oct 6, 2024
7dd5a59
Fix alignment on wrapping in global settings tabs
abh1sar Oct 18, 2024
4112a1e
rename Autofill vCenter credentials to Autofill vCenter credentials f…
abh1sar Oct 18, 2024
020be6c
Rename Service Ip to Ip Address in management server response
abh1sar Oct 18, 2024
8bc6bf4
Change description of kvm.snapshot.enabled to say that it applies to …
abh1sar Oct 18, 2024
736fce9
Return error when kvm vm snapshot is taken withoutsnapshot memory
abh1sar Oct 22, 2024
0cfa879
Minor naming changes and grammar
abh1sar Oct 23, 2024
c221a9e
Fix tooltip for attach volume to instance button
abh1sar Oct 29, 2024
92d8c3e
UI: Option to attach volume to an instance during create volume
abh1sar Oct 2, 2024
27ab123
UI: condition to display create vm-vol-snapshots to same as create vo…
abh1sar Oct 6, 2024
145e7ab
Merge branch 'ui-improv' of https://github.com/abh1sar/cloudstack int…
abh1sar Dec 3, 2024
2f72e5b
moved db changes from 41900to42000 to 42000to42010
abh1sar Dec 3, 2024
2ffca62
Merge remote-tracking branch 'upstream/4.20' into ui-polish
abh1sar Dec 4, 2024
e7ffd8c
Update group_id in already present usage configuration settings
abh1sar Dec 6, 2024
92a3dcd
Merge branch '4.20' into ui-improv
abh1sar Dec 17, 2024
475df60
Merge remote-tracking branch 'upstream/4.20' into ui-polish
abh1sar Jan 13, 2025
a7a8cdf
remove "schedule" from message in create Recurring Snapshots form
abh1sar Jan 13, 2025
6442663
Merge branch '4.20' into ui-improv
abh1sar Jan 24, 2025
c59c122
Update server/src/main/java/com/cloud/vm/snapshot/VMSnapshotManagerIm…
andrijapanicsb Feb 5, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -425,3 +425,8 @@ INSERT IGNORE INTO `cloud`.`guest_os_hypervisor` (uuid, hypervisor_type, hypervi

CALL `cloud`.`IDEMPOTENT_ADD_COLUMN`('cloud.vm_instance', 'delete_protection', 'boolean DEFAULT FALSE COMMENT "delete protection for vm" ');
CALL `cloud`.`IDEMPOTENT_ADD_COLUMN`('cloud.volumes', 'delete_protection', 'boolean DEFAULT FALSE COMMENT "delete protection for volumes" ');

-- Create a new group for Usage Server related configurations
INSERT INTO `cloud`.`configuration_group` (`name`, `description`, `precedence`) VALUES ('Usage Server', 'Usage Server related configuration', 9);
DELETE FROM `cloud`.`configuration_subgroup` WHERE `name`='Usage';
INSERT INTO `cloud`.`configuration_subgroup` (`name`, `keywords`, `precedence`, `group_id`) VALUES ('Usage', NULL, 1, (SELECT id FROM `cloud`.`configuration_group` WHERE `name` = 'Usage Server'));
4 changes: 2 additions & 2 deletions server/src/main/java/com/cloud/configuration/Config.java
Original file line number Diff line number Diff line change
Expand Up @@ -665,8 +665,8 @@ public enum Config {
ManagementServer.class,
String.class,
"hypervisor.list",
HypervisorType.Hyperv + "," + HypervisorType.KVM + "," + HypervisorType.XenServer + "," + HypervisorType.VMware + "," + HypervisorType.BareMetal + "," +
HypervisorType.Ovm + "," + HypervisorType.LXC + "," + HypervisorType.Ovm3,
HypervisorType.KVM + "," + HypervisorType.VMware + "," + HypervisorType.XenServer + "," + HypervisorType.Hyperv + "," +
HypervisorType.BareMetal + "," + HypervisorType.Ovm + "," + HypervisorType.LXC + "," + HypervisorType.Ovm3,
"The list of hypervisors that this deployment will use.",
"hypervisorList",
ConfigKey.Kind.CSV,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,10 +23,11 @@
import javax.inject.Inject;
import javax.naming.ConfigurationException;

import org.apache.cloudstack.annotation.AnnotationService;
import org.apache.cloudstack.annotation.dao.AnnotationDao;
import org.apache.commons.collections.CollectionUtils;
import org.springframework.stereotype.Component;

import org.apache.cloudstack.annotation.AnnotationService;
import org.apache.cloudstack.annotation.dao.AnnotationDao;
import org.apache.cloudstack.api.command.user.vpn.CreateVpnConnectionCmd;
import org.apache.cloudstack.api.command.user.vpn.CreateVpnCustomerGatewayCmd;
import org.apache.cloudstack.api.command.user.vpn.CreateVpnGatewayCmd;
Expand All @@ -45,7 +46,6 @@
import com.cloud.event.ActionEvent;
import com.cloud.event.EventTypes;
import com.cloud.exception.InvalidParameterValueException;
import com.cloud.exception.NetworkRuleConflictException;
import com.cloud.exception.PermissionDeniedException;
import com.cloud.exception.ResourceUnavailableException;
import com.cloud.network.Site2SiteCustomerGateway;
Expand Down Expand Up @@ -106,7 +106,6 @@
@Inject
private AnnotationDao annotationDao;

String _name;
int _connLimit;
int _subnetsLimit;

Expand Down Expand Up @@ -253,35 +252,23 @@

@Override
@ActionEvent(eventType = EventTypes.EVENT_S2S_VPN_CONNECTION_CREATE, eventDescription = "creating s2s vpn connection", create = true)
public Site2SiteVpnConnection createVpnConnection(CreateVpnConnectionCmd cmd) throws NetworkRuleConflictException {
public Site2SiteVpnConnection createVpnConnection(CreateVpnConnectionCmd cmd) {

Check warning on line 255 in server/src/main/java/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java

View check run for this annotation

Codecov / codecov/patch

server/src/main/java/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java#L255

Added line #L255 was not covered by tests
Account caller = CallContext.current().getCallingAccount();
Account owner = _accountMgr.getAccount(cmd.getEntityOwnerId());

//Verify that caller can perform actions in behalf of vpc owner
_accountMgr.checkAccess(caller, null, false, owner);

Long customerGatewayId = cmd.getCustomerGatewayId();
Site2SiteCustomerGateway customerGateway = _customerGatewayDao.findById(customerGatewayId);
if (customerGateway == null) {
throw new InvalidParameterValueException("Unable to found specified Site to Site VPN customer gateway " + customerGatewayId + " !");
}
_accountMgr.checkAccess(caller, null, false, customerGateway);
Site2SiteCustomerGateway customerGateway = getAndValidateSite2SiteCustomerGateway(customerGatewayId, caller);

Check warning on line 263 in server/src/main/java/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java

View check run for this annotation

Codecov / codecov/patch

server/src/main/java/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java#L263

Added line #L263 was not covered by tests

Long vpnGatewayId = cmd.getVpnGatewayId();
Site2SiteVpnGateway vpnGateway = _vpnGatewayDao.findById(vpnGatewayId);
if (vpnGateway == null) {
throw new InvalidParameterValueException("Unable to found specified Site to Site VPN gateway " + vpnGatewayId + " !");
}
_accountMgr.checkAccess(caller, null, false, vpnGateway);
Site2SiteVpnGateway vpnGateway = getAndValidateSite2SiteVpnGateway(vpnGatewayId, caller);

Check warning on line 266 in server/src/main/java/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java

View check run for this annotation

Codecov / codecov/patch

server/src/main/java/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java#L266

Added line #L266 was not covered by tests

if (customerGateway.getAccountId() != vpnGateway.getAccountId() || customerGateway.getDomainId() != vpnGateway.getDomainId()) {
throw new InvalidParameterValueException("VPN connection can only be esitablished between same account's VPN gateway and customer gateway!");
}
validateVpnConnectionOfTheRightAccount(customerGateway, vpnGateway);
validateVpnConnectionDoesntExist(vpnGatewayId, customerGatewayId);
validatePrerequisiteVpnGateway(vpnGateway);

Check warning on line 270 in server/src/main/java/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java

View check run for this annotation

Codecov / codecov/patch

server/src/main/java/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java#L268-L270

Added lines #L268 - L270 were not covered by tests

if (_vpnConnectionDao.findByVpnGatewayIdAndCustomerGatewayId(vpnGatewayId, customerGatewayId) != null) {
throw new InvalidParameterValueException("The vpn connection with customer gateway id " + customerGatewayId + " and vpn gateway id " + vpnGatewayId +
" already existed!");
}
String[] cidrList = customerGateway.getGuestCidrList().split(",");

// Remote sub nets cannot overlap VPC's sub net
Expand Down Expand Up @@ -324,13 +311,51 @@
return conn;
}

private Site2SiteCustomerGateway getAndValidateSite2SiteCustomerGateway(Long customerGatewayId, Account caller) {
Site2SiteCustomerGateway customerGateway = _customerGatewayDao.findById(customerGatewayId);

Check warning on line 315 in server/src/main/java/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java

View check run for this annotation

Codecov / codecov/patch

server/src/main/java/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java#L314-L315

Added lines #L314 - L315 were not covered by tests
if (customerGateway == null) {
throw new InvalidParameterValueException(String.format("Unable to find specified Site to Site VPN customer gateway %s !", customerGatewayId));

Check warning on line 317 in server/src/main/java/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java

View check run for this annotation

Codecov / codecov/patch

server/src/main/java/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java#L317

Added line #L317 was not covered by tests
}
_accountMgr.checkAccess(caller, null, false, customerGateway);
return customerGateway;
}

Check warning on line 321 in server/src/main/java/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java

View check run for this annotation

Codecov / codecov/patch

server/src/main/java/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java#L319-L321

Added lines #L319 - L321 were not covered by tests

private Site2SiteVpnGateway getAndValidateSite2SiteVpnGateway(Long vpnGatewayId, Account caller) {
Site2SiteVpnGateway vpnGateway = _vpnGatewayDao.findById(vpnGatewayId);

Check warning on line 324 in server/src/main/java/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java

View check run for this annotation

Codecov / codecov/patch

server/src/main/java/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java#L323-L324

Added lines #L323 - L324 were not covered by tests
if (vpnGateway == null) {
throw new InvalidParameterValueException(String.format("Unable to find specified Site to Site VPN gateway %s !", vpnGatewayId));

Check warning on line 326 in server/src/main/java/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java

View check run for this annotation

Codecov / codecov/patch

server/src/main/java/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java#L326

Added line #L326 was not covered by tests
}
_accountMgr.checkAccess(caller, null, false, vpnGateway);
return vpnGateway;
}

Check warning on line 330 in server/src/main/java/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java

View check run for this annotation

Codecov / codecov/patch

server/src/main/java/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java#L328-L330

Added lines #L328 - L330 were not covered by tests

private void validateVpnConnectionOfTheRightAccount(Site2SiteCustomerGateway customerGateway, Site2SiteVpnGateway vpnGateway) {

Check warning on line 332 in server/src/main/java/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java

View check run for this annotation

Codecov / codecov/patch

server/src/main/java/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java#L332

Added line #L332 was not covered by tests
if (customerGateway.getAccountId() != vpnGateway.getAccountId() || customerGateway.getDomainId() != vpnGateway.getDomainId()) {
throw new InvalidParameterValueException("VPN connection can only be established between same account's VPN gateway and customer gateway!");

Check warning on line 334 in server/src/main/java/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java

View check run for this annotation

Codecov / codecov/patch

server/src/main/java/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java#L334

Added line #L334 was not covered by tests
}
}

Check warning on line 336 in server/src/main/java/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java

View check run for this annotation

Codecov / codecov/patch

server/src/main/java/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java#L336

Added line #L336 was not covered by tests

private void validateVpnConnectionDoesntExist(Long vpnGatewayId, Long customerGatewayId) {

Check warning on line 338 in server/src/main/java/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java

View check run for this annotation

Codecov / codecov/patch

server/src/main/java/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java#L338

Added line #L338 was not covered by tests
if (_vpnConnectionDao.findByVpnGatewayIdAndCustomerGatewayId(vpnGatewayId, customerGatewayId) != null) {
throw new InvalidParameterValueException("The vpn connection with customer gateway id " + customerGatewayId + " and vpn gateway id " + vpnGatewayId +

Check warning on line 340 in server/src/main/java/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java

View check run for this annotation

Codecov / codecov/patch

server/src/main/java/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java#L340

Added line #L340 was not covered by tests
" already existed!");
}
}

Check warning on line 343 in server/src/main/java/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java

View check run for this annotation

Codecov / codecov/patch

server/src/main/java/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java#L343

Added line #L343 was not covered by tests

private void validatePrerequisiteVpnGateway(Site2SiteVpnGateway vpnGateway) {

Check warning on line 345 in server/src/main/java/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java

View check run for this annotation

Codecov / codecov/patch

server/src/main/java/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java#L345

Added line #L345 was not covered by tests
// check if gateway has been defined on the VPC
if (_vpnGatewayDao.findByVpcId(vpnGateway.getVpcId()) == null) {
throw new InvalidParameterValueException("we can not create a VPN connection for a VPC that does not have a VPN gateway defined");

Check warning on line 348 in server/src/main/java/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java

View check run for this annotation

Codecov / codecov/patch

server/src/main/java/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java#L348

Added line #L348 was not covered by tests
}
}

Check warning on line 350 in server/src/main/java/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java

View check run for this annotation

Codecov / codecov/patch

server/src/main/java/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java#L350

Added line #L350 was not covered by tests

@Override
@DB
@ActionEvent(eventType = EventTypes.EVENT_S2S_VPN_CONNECTION_CREATE, eventDescription = "starting s2s vpn connection", async = true)
public Site2SiteVpnConnection startVpnConnection(long id) throws ResourceUnavailableException {
Site2SiteVpnConnectionVO conn = _vpnConnectionDao.acquireInLockTable(id);
if (conn == null) {
throw new CloudRuntimeException("Unable to acquire lock on " + conn);
throw new CloudRuntimeException("Unable to acquire lock for starting of VPN connection with ID " + id);

Check warning on line 358 in server/src/main/java/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java

View check run for this annotation

Codecov / codecov/patch

server/src/main/java/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java#L358

Added line #L358 was not covered by tests
}
try {
if (conn.getState() != State.Pending && conn.getState() != State.Disconnected) {
Expand Down Expand Up @@ -380,19 +405,15 @@
Account caller = CallContext.current().getCallingAccount();

Long id = cmd.getId();
Site2SiteCustomerGateway customerGateway = _customerGatewayDao.findById(id);
if (customerGateway == null) {
throw new InvalidParameterValueException("Fail to find customer gateway with " + id + " !");
}
_accountMgr.checkAccess(caller, null, false, customerGateway);
Site2SiteCustomerGateway customerGateway = getAndValidateSite2SiteCustomerGateway(id, caller);

Check warning on line 408 in server/src/main/java/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java

View check run for this annotation

Codecov / codecov/patch

server/src/main/java/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java#L408

Added line #L408 was not covered by tests

return doDeleteCustomerGateway(customerGateway);
}

protected boolean doDeleteCustomerGateway(Site2SiteCustomerGateway gw) {
long id = gw.getId();
List<Site2SiteVpnConnectionVO> vpnConnections = _vpnConnectionDao.listByCustomerGatewayId(id);
if (vpnConnections != null && vpnConnections.size() != 0) {
if (!CollectionUtils.isEmpty(vpnConnections)) {
throw new InvalidParameterValueException("Unable to delete VPN customer gateway with id " + id + " because there is still related VPN connections!");
}
annotationDao.removeByEntityType(AnnotationService.EntityType.VPN_CUSTOMER_GATEWAY.name(), gw.getUuid());
Expand All @@ -402,7 +423,7 @@

protected void doDeleteVpnGateway(Site2SiteVpnGateway gw) {
List<Site2SiteVpnConnectionVO> conns = _vpnConnectionDao.listByVpnGatewayId(gw.getId());
if (conns != null && conns.size() != 0) {
if (!CollectionUtils.isEmpty(conns)) {
throw new InvalidParameterValueException("Unable to delete VPN gateway " + gw.getId() + " because there is still related VPN connections!");
}
_vpnGatewayDao.remove(gw.getId());
Expand All @@ -415,12 +436,7 @@
Account caller = CallContext.current().getCallingAccount();

Long id = cmd.getId();
Site2SiteVpnGateway vpnGateway = _vpnGatewayDao.findById(id);
if (vpnGateway == null) {
throw new InvalidParameterValueException("Fail to find vpn gateway with " + id + " !");
}

_accountMgr.checkAccess(caller, null, false, vpnGateway);
Site2SiteVpnGateway vpnGateway = getAndValidateSite2SiteVpnGateway(id, caller);

Check warning on line 439 in server/src/main/java/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java

View check run for this annotation

Codecov / codecov/patch

server/src/main/java/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java#L439

Added line #L439 was not covered by tests

doDeleteVpnGateway(vpnGateway);
return true;
Expand Down Expand Up @@ -576,7 +592,7 @@
private void stopVpnConnection(Long id) throws ResourceUnavailableException {
Site2SiteVpnConnectionVO conn = _vpnConnectionDao.acquireInLockTable(id);
if (conn == null) {
throw new CloudRuntimeException("Unable to acquire lock on " + conn);
throw new CloudRuntimeException("Unable to acquire lock for stopping of VPN connection with ID " + id);

Check warning on line 595 in server/src/main/java/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java

View check run for this annotation

Codecov / codecov/patch

server/src/main/java/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java#L595

Added line #L595 was not covered by tests
}
try {
if (conn.getState() == State.Pending) {
Expand Down Expand Up @@ -637,10 +653,9 @@
String keyword = cmd.getKeyword();

Account caller = CallContext.current().getCallingAccount();
List<Long> permittedAccounts = new ArrayList<Long>();
List<Long> permittedAccounts = new ArrayList<>();

Check warning on line 656 in server/src/main/java/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java

View check run for this annotation

Codecov / codecov/patch

server/src/main/java/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java#L656

Added line #L656 was not covered by tests

Ternary<Long, Boolean, ListProjectResourcesCriteria> domainIdRecursiveListProject = new Ternary<Long, Boolean,
ListProjectResourcesCriteria>(domainId, isRecursive, null);
Ternary<Long, Boolean, ListProjectResourcesCriteria> domainIdRecursiveListProject = new Ternary<>(domainId, isRecursive, null);

Check warning on line 658 in server/src/main/java/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java

View check run for this annotation

Codecov / codecov/patch

server/src/main/java/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java#L658

Added line #L658 was not covered by tests
_accountMgr.buildACLSearchParameters(caller, id, accountName, cmd.getProjectId(), permittedAccounts, domainIdRecursiveListProject, listAll, false);
domainId = domainIdRecursiveListProject.first();
isRecursive = domainIdRecursiveListProject.second();
Expand All @@ -665,7 +680,7 @@
}

Pair<List<Site2SiteCustomerGatewayVO>, Integer> result = _customerGatewayDao.searchAndCount(sc, searchFilter);
return new Pair<List<? extends Site2SiteCustomerGateway>, Integer>(result.first(), result.second());
return new Pair<>(result.first(), result.second());

Check warning on line 683 in server/src/main/java/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java

View check run for this annotation

Codecov / codecov/patch

server/src/main/java/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java#L683

Added line #L683 was not covered by tests
}

@Override
Expand All @@ -682,10 +697,9 @@
long pageSizeVal = cmd.getPageSizeVal();

Account caller = CallContext.current().getCallingAccount();
List<Long> permittedAccounts = new ArrayList<Long>();
List<Long> permittedAccounts = new ArrayList<>();

Check warning on line 700 in server/src/main/java/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java

View check run for this annotation

Codecov / codecov/patch

server/src/main/java/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java#L700

Added line #L700 was not covered by tests

Ternary<Long, Boolean, ListProjectResourcesCriteria> domainIdRecursiveListProject = new Ternary<Long, Boolean,
ListProjectResourcesCriteria>(domainId, isRecursive, null);
Ternary<Long, Boolean, ListProjectResourcesCriteria> domainIdRecursiveListProject = new Ternary<>(domainId, isRecursive, null);

Check warning on line 702 in server/src/main/java/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java

View check run for this annotation

Codecov / codecov/patch

server/src/main/java/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java#L702

Added line #L702 was not covered by tests
_accountMgr.buildACLSearchParameters(caller, id, accountName, cmd.getProjectId(), permittedAccounts, domainIdRecursiveListProject, listAll, false);
domainId = domainIdRecursiveListProject.first();
isRecursive = domainIdRecursiveListProject.second();
Expand Down Expand Up @@ -715,7 +729,7 @@
}

Pair<List<Site2SiteVpnGatewayVO>, Integer> result = _vpnGatewayDao.searchAndCount(sc, searchFilter);
return new Pair<List<? extends Site2SiteVpnGateway>, Integer>(result.first(), result.second());
return new Pair<>(result.first(), result.second());

Check warning on line 732 in server/src/main/java/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java

View check run for this annotation

Codecov / codecov/patch

server/src/main/java/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java#L732

Added line #L732 was not covered by tests
}

@Override
Expand All @@ -732,10 +746,9 @@
long pageSizeVal = cmd.getPageSizeVal();

Account caller = CallContext.current().getCallingAccount();
List<Long> permittedAccounts = new ArrayList<Long>();
List<Long> permittedAccounts = new ArrayList<>();

Check warning on line 749 in server/src/main/java/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java

View check run for this annotation

Codecov / codecov/patch

server/src/main/java/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java#L749

Added line #L749 was not covered by tests

Ternary<Long, Boolean, ListProjectResourcesCriteria> domainIdRecursiveListProject = new Ternary<Long, Boolean,
ListProjectResourcesCriteria>(domainId, isRecursive, null);
Ternary<Long, Boolean, ListProjectResourcesCriteria> domainIdRecursiveListProject = new Ternary<>(domainId, isRecursive, null);

Check warning on line 751 in server/src/main/java/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java

View check run for this annotation

Codecov / codecov/patch

server/src/main/java/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java#L751

Added line #L751 was not covered by tests
_accountMgr.buildACLSearchParameters(caller, id, accountName, cmd.getProjectId(), permittedAccounts, domainIdRecursiveListProject, listAll, false);
domainId = domainIdRecursiveListProject.first();
isRecursive = domainIdRecursiveListProject.second();
Expand Down Expand Up @@ -769,7 +782,7 @@
}

Pair<List<Site2SiteVpnConnectionVO>, Integer> result = _vpnConnectionDao.searchAndCount(sc, searchFilter);
return new Pair<List<? extends Site2SiteVpnConnection>, Integer>(result.first(), result.second());
return new Pair<>(result.first(), result.second());

Check warning on line 785 in server/src/main/java/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java

View check run for this annotation

Codecov / codecov/patch

server/src/main/java/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java#L785

Added line #L785 was not covered by tests
}

@Override
Expand Down Expand Up @@ -816,7 +829,7 @@

@Override
public List<Site2SiteVpnConnectionVO> getConnectionsForRouter(DomainRouterVO router) {
List<Site2SiteVpnConnectionVO> conns = new ArrayList<Site2SiteVpnConnectionVO>();
List<Site2SiteVpnConnectionVO> conns = new ArrayList<>();

Check warning on line 832 in server/src/main/java/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java

View check run for this annotation

Codecov / codecov/patch

server/src/main/java/com/cloud/network/vpn/Site2SiteVpnManagerImpl.java#L832

Added line #L832 was not covered by tests
// One router for one VPC
Long vpcId = router.getVpcId();
if (router.getVpcId() == null) {
Expand All @@ -829,7 +842,6 @@
@Override
public boolean deleteCustomerGatewayByAccount(long accountId) {
boolean result = true;
;
List<Site2SiteCustomerGatewayVO> gws = _customerGatewayDao.listByAccountId(accountId);
for (Site2SiteCustomerGatewayVO gw : gws) {
result = result & doDeleteCustomerGateway(gw);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4859,7 +4859,7 @@ public Pair<List<? extends UserData>, Integer> listUserDatas(final ListUserDataC

sb.and("id", sb.entity().getId(), SearchCriteria.Op.EQ);
sb.and("name", sb.entity().getName(), SearchCriteria.Op.EQ);
sb.and("name", sb.entity().getName(), SearchCriteria.Op.EQ);
sb.and("keyword", sb.entity().getName(), SearchCriteria.Op.LIKE);
final SearchCriteria<UserDataVO> sc = sb.create();
_accountMgr.buildACLSearchCriteria(sc, domainId, isRecursive, permittedAccounts, listProjectResourcesCriteria);

Expand All @@ -4872,7 +4872,7 @@ public Pair<List<? extends UserData>, Integer> listUserDatas(final ListUserDataC
}

if (keyword != null) {
sc.setParameters("name", "%" + keyword + "%");
sc.setParameters("keyword", "%" + keyword + "%");
}

final Pair<List<UserDataVO>, Integer> result = userDataDao.searchAndCount(sc, searchFilter);
Expand Down
1 change: 0 additions & 1 deletion ui/public/locales/de_DE.json
Original file line number Diff line number Diff line change
Expand Up @@ -1265,7 +1265,6 @@
"label.save.new.rule": "Neue Regel Speichern",
"label.schedule": "Zeitplan",
"label.scheduled.backups": "geplante Backups",
"label.scheduled.snapshots": "geplante Schnappschüsse",
"label.scope": "Geltungsbereich",
"label.search": "Suche",
"label.secondary.isolated.vlan.type.isolated": "Isoliert",
Expand Down
1 change: 0 additions & 1 deletion ui/public/locales/el_GR.json
Original file line number Diff line number Diff line change
Expand Up @@ -1517,7 +1517,6 @@
"label.scale.vm": "Κλίμακα εικονικής μηχανής",
"label.schedule": "Πρόγραμμα",
"label.scheduled.backups": "Προγραμματισμένα αντίγραφα ασφαλείας",
"label.scheduled.snapshots": "Προγραμματισμένα στιγμιότυπα",
"label.scope": "Πεδίο εφαρμογής",
"label.search": "Αναζήτηση",
"label.secondary.isolated.vlan.type.isolated": "Απομονωμένες",
Expand Down
3 changes: 2 additions & 1 deletion ui/public/locales/en.json
Original file line number Diff line number Diff line change
Expand Up @@ -53,6 +53,7 @@
"label.action": "Action",
"label.action.attach.disk": "Attach disk",
"label.action.attach.iso": "Attach ISO",
"label.action.attach.to.instance": "Attach to Instance",
"label.action.bulk.delete.egress.firewall.rules": "Bulk delete egress firewall rules",
"label.action.bulk.delete.firewall.rules": "Bulk delete firewall rules",
"label.action.bulk.delete.ip.v6.firewall.rules": "Bulk remove IPv6 firewall rules",
Expand Down Expand Up @@ -401,6 +402,7 @@
"label.attaching": "Attaching",
"label.authentication.method": "Authentication Method",
"label.authentication.sshkey": "System SSH Key",
"label.autofill.vcenter.credentials": "Autofill vCenter credentials",
"label.autoscale": "AutoScale",
"label.autoscalevmgroupname": "AutoScaling Group",
"label.author.email": "Author e-mail",
Expand Down Expand Up @@ -1985,7 +1987,6 @@
"label.schedule": "Schedule",
"label.schedule.add": "Add schedule",
"label.scheduled.backups": "Scheduled backups",
"label.scheduled.snapshots": "Scheduled Snapshots",
"label.schedules": "Schedules",
"label.scope": "Scope",
"label.scope.tooltip": "Primary Storage Pool Scope",
Expand Down
1 change: 0 additions & 1 deletion ui/public/locales/ja_JP.json
Original file line number Diff line number Diff line change
Expand Up @@ -1969,7 +1969,6 @@
"label.scaleup.policy": "スケールアップポリシー",
"label.schedule": "スケジュール",
"label.scheduled.backups": "スケジュールされたバックアップ",
"label.scheduled.snapshots": "スケジュールされたスナップショット",
"label.scope": "スコープ",
"label.search": "検索",
"label.secondary.isolated.vlan.type.isolated": "隔離",
Expand Down
Loading
Loading