@Override public boolean isActivated() { return beanDef.isActivated(); }
@Override public boolean isActivated() { return beanDef.isActivated(); }
Collection<SyncBeanDef<Activity>> getAvailableActivities() { Collection<SyncBeanDef<Activity>> activeBeans = new ArrayList<SyncBeanDef<Activity>>(); for (SyncBeanDef<Activity> bean : iocManager.lookupBeans(Activity.class)) { if (bean.isActivated()) { activeBeans.add(bean); } } return activeBeans; }
final List<T> instances = new ArrayList<T>(); for (final SyncBeanDef<T> headerBean : headerBeans) { if (!headerBean.isActivated()) { continue;
private <T extends Activity> Set<T> secure(final Collection<SyncBeanDef<T>> activityBeans, final boolean protectedAccess) { final Set<T> activities = new HashSet<T>(activityBeans.size()); for (final SyncBeanDef<T> activityBean : activityBeans) { if (!activityBean.isActivated()) { continue; } final T instance = activityBean.getInstance(); if (!protectedAccess || authzManager.authorize(instance, identity) && activitiesAuthorizationManager.authorizeActivity(instance)) { activities.add(instance); } else { // Since user does not have permission, destroy bean to avoid memory leak if (activityBean.getScope().equals(Dependent.class)) { iocManager.destroyBean(instance); } } } return activities; }
@SuppressWarnings("unchecked") private <T> SyncBeanDef mockRegularBean(Class<T> type, T instance) { SyncBeanDef<T> beanDef = mock(SyncBeanDef.class); when(iocManager.lookupBeans(type.getName())).thenReturn(Collections.singleton(beanDef)); when(beanDef.getInstance()).thenReturn(instance); when(beanDef.getBeanClass()).thenReturn((Class) type); when(beanDef.isActivated()).thenReturn(instance != null); when(beanDef.getName()).thenReturn(type.getSimpleName()); return beanDef; }
@SuppressWarnings("unchecked") private <T> SyncBeanDef mockRegularBean(Class<T> type, T instance) { SyncBeanDef<T> beanDef = mock(SyncBeanDef.class); when(iocManager.lookupBeans(type.getName())).thenReturn(Collections.singleton(beanDef)); when(beanDef.getInstance()).thenReturn(instance); when(beanDef.getBeanClass()).thenReturn((Class) type); when(beanDef.isActivated()).thenReturn(instance != null); when(beanDef.getName()).thenReturn(type.getSimpleName()); return beanDef; }
@Before public void setup() { when(authzManager.authorize(any(Resource.class), any(User.class))).thenReturn(true); when(activitiesAuthorizationManager.authorizeActivity(anyObject())).thenReturn(true); activatedActivity = mock(Activity.class); when(activatedActivity.getIdentifier()).thenReturn("activated activity"); when(activatedActivityBean.getInstance()).thenReturn(activatedActivity); when(activatedActivityBean.isActivated()).thenReturn(true); when(nonActivatedActivityBean.isActivated()).thenReturn(false); Collection<SyncBeanDef<Activity>> activityList = new ArrayList<SyncBeanDef<Activity>>(); activityList.add(activatedActivityBean); activityList.add(nonActivatedActivityBean); // This covers the case where the activity manager goes directly to the Errai bean manager. // The list includes all beans, active or otherwise, and the activity manager has to filter them. when(iocManager.lookupBeans(Activity.class)).thenReturn(activityList); // And this covers the case where the activity manager does the lookup via the ActivityBeansCache. // We set this up assuming ActivityBeansCache is well-behaved, and hides the existence of inactive beans. // (of course this assumption is verified in a separate test) ActivityAndMetaInfo activatedActivityAndMetaInfo = new ActivityAndMetaInfo(iocManager, activatedActivityBean, 0, Collections.<String>emptyList()); when(resourceTypeManagerCache.getResourceActivities()).thenReturn(singletonList(activatedActivityAndMetaInfo)); when(activityBeansCache.getActivity("activated activity")).thenReturn(activatedActivityBean); }
@Before public void setup() { when(authzManager.authorize(any(Resource.class), any(User.class))).thenReturn(true); when(activitiesAuthorizationManager.authorizeActivity(anyObject())).thenReturn(true); activatedActivity = mock(Activity.class); when(activatedActivity.getIdentifier()).thenReturn("activated activity"); when(activatedActivityBean.getInstance()).thenReturn(activatedActivity); when(activatedActivityBean.isActivated()).thenReturn(true); when(nonActivatedActivityBean.isActivated()).thenReturn(false); Collection<SyncBeanDef<Activity>> activityList = new ArrayList<SyncBeanDef<Activity>>(); activityList.add(activatedActivityBean); activityList.add(nonActivatedActivityBean); // This covers the case where the activity manager goes directly to the Errai bean manager. // The list includes all beans, active or otherwise, and the activity manager has to filter them. when(iocManager.lookupBeans(Activity.class)).thenReturn(activityList); // And this covers the case where the activity manager does the lookup via the ActivityBeansCache. // We set this up assuming ActivityBeansCache is well-behaved, and hides the existence of inactive beans. // (of course this assumption is verified in a separate test) ActivityAndMetaInfo activatedActivityAndMetaInfo = new ActivityAndMetaInfo(iocManager, activatedActivityBean, 0, Collections.<String>emptyList()); when(resourceTypeManagerCache.getResourceActivities()).thenReturn(singletonList(activatedActivityAndMetaInfo)); when(activityBeansCache.getActivity("activated activity")).thenReturn(activatedActivityBean); }
public void testBeanActiveByDefault() { final SyncBeanDef<BeanManagerDependentBean> bean = IOC.getBeanManager().lookupBean(BeanManagerDependentBean.class); assertTrue(bean.isActivated()); }
public void testBeanActivator() { final TestBeanActivator activator = IOC.getBeanManager().lookupBean(TestBeanActivator.class).getInstance(); activator.setActived(true); final SyncBeanDef<ActivatedBean> bean = IOC.getBeanManager().lookupBean(ActivatedBean.class); assertTrue(bean.isActivated()); activator.setActived(false); assertFalse(bean.isActivated()); final SyncBeanDef<ActivatedBeanInterface> qualifiedBean = IOC.getBeanManager().lookupBean(ActivatedBeanInterface.class); assertFalse(qualifiedBean.isActivated()); activator.setActived(true); assertTrue(qualifiedBean.isActivated()); }