• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

Java Atomic类代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了Java中pt.ist.fenixframework.Atomic的典型用法代码示例。如果您正苦于以下问题:Java Atomic类的具体用法?Java Atomic怎么用?Java Atomic使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。



Atomic类属于pt.ist.fenixframework包,在下文中一共展示了Atomic类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。

示例1: occupantsManagement

import pt.ist.fenixframework.Atomic; //导入依赖的package包/类
@Atomic(mode = TxMode.WRITE)
private void occupantsManagement(Space space, SpaceOccupantsBean sab) {
    SharedOccupation sharedOccup = null;
    List<SharedOccupation> sharedOccups = getSharedOccupations(space);
    for (SharedOccupation so : sharedOccups) {
        if (so.getUser().equals(sab.getUserObject())) {
            sharedOccup = so;
        }
    }
    if (sharedOccups.size() == 0 || sharedOccup == null) {
        sharedOccup = new SharedOccupation();

    }

    if (sharedOccup.doConfig(sab)) {
        space.addOccupation(sharedOccup);
    }
    return;
}
 
开发者ID:FenixEdu,项目名称:fenixedu-spaces,代码行数:20,代码来源:SpaceOccupantsController.java


示例2: createOccupation

import pt.ist.fenixframework.Atomic; //导入依赖的package包/类
@Atomic
public void createOccupation(String emails, String subject, String description, String selectedSpaces, String config,
        String events, OccupationRequest request, User user) throws Exception {
    final Set<Space> selectedSpaceSet = selectSpaces(selectedSpaces, user);
    final List<Interval> intervals = selectEvents(events);
    final Occupation occupation = new Occupation(emails, subject, description, parseConfig(config, intervals));
    for (Space space : selectedSpaceSet) {
        if (!space.isFree(intervals)) {
            throw new Exception(messageSource.getMessage("error.occupations.rooms.is.not.free", new Object[0],
                    I18N.getLocale()));
        }
        occupation.addSpace(space);
    }
    if (request != null) {
        request.addOccupation(occupation);
    }
    if (notificationService != null) {
        notificationService.sendEmail(emails, subject, description);
    }
}
 
开发者ID:FenixEdu,项目名称:fenixedu-spaces,代码行数:21,代码来源:OccupationService.java


示例3: editOccupation

import pt.ist.fenixframework.Atomic; //导入依赖的package包/类
@Atomic
public void editOccupation(Occupation occupation, String emails, String subject, String description, String selectedSpaces,
        User user) throws Exception {
    if (!canManageOccupation(occupation, user)) {
        throw new SpaceDomainException("unauthorized.edit.occupation");
    }
    occupation.setEmails(emails);
    occupation.setSubject(subject);
    occupation.setDescription(description);
    final Set<Space> selectedSpaceSet = selectSpaces(selectedSpaces, user);
    occupation.getSpaces().stream().forEach(s -> occupation.removeSpace(s));
    for (Space space : selectedSpaceSet) {
        if (!space.isFree(occupation.getIntervals())) {
            throw new Exception(messageSource.getMessage("error.occupations.rooms.is.not.free", new Object[0],
                    I18N.getLocale()));
        }
        occupation.addSpace(space);
    }
}
 
开发者ID:FenixEdu,项目名称:fenixedu-spaces,代码行数:20,代码来源:OccupationService.java


示例4: build

import pt.ist.fenixframework.Atomic; //导入依赖的package包/类
@Atomic(mode = TxMode.WRITE)
public Information build() {
    Information info = null;
    if (validUntil != null && validFrom.isAfter(validUntil)) {
        throw new SpaceDomainException("label.start.date.is.after.end.date");
    }
    if (blueprintContent == null && spacePhotoContent == null) {
        info = new Information(validFrom, validUntil, allocatableCapacity, blueprintNumber, area, name, identification,
                metadata, classification, blueprint, spacePhotoSet, user);
    } else if (blueprintContent == null && spacePhotoContent != null) {
        info = new Information(validFrom, validUntil, allocatableCapacity, blueprintNumber, area, name, identification,
                metadata, classification, blueprint, spacePhotoContent, spacePhotoSet, user);
    } else if (blueprintContent != null && spacePhotoContent == null) {
        info = new Information(validFrom, validUntil, allocatableCapacity, blueprintNumber, area, name, identification,
                metadata, classification, blueprintContent, spacePhotoSet, user);
    } else {
        info = new Information(validFrom, validUntil, allocatableCapacity, blueprintNumber, area, name, identification,
                metadata, classification, blueprintContent, spacePhotoContent, spacePhotoSet, user);
    }
    return info;
}
 
开发者ID:FenixEdu,项目名称:fenixedu-spaces,代码行数:22,代码来源:Information.java


示例5: createPostFromJson

import pt.ist.fenixframework.Atomic; //导入依赖的package包/类
@Atomic(mode = TxMode.WRITE)
private Post createPostFromJson(Site site, JsonObject jObj) {
    PermissionEvaluation.ensureCanDoThis(site, Permission.CREATE_POST);
    Post post = new Post(site);

    if (jObj.has("name") && !jObj.get("name").isJsonNull() && jObj.get("name").isJsonObject()) {
        post.setName(LocalizedString.fromJson(jObj.get("name")));
    }

    if (jObj.has("slug") && !jObj.get("slug").isJsonNull()) {
        post.setSlug(jObj.get("slug").getAsString());
    }

    if (jObj.has("body") && !jObj.get("body").isJsonNull() && jObj.get("body").isJsonObject()) {

        LocalizedString excerpt = null;
        if(jObj.has("excerpt") && !jObj.get("excerpt").isJsonNull() && jObj.get("excerpt").isJsonObject()) {
            excerpt = LocalizedString.fromJson(jObj.get("excerpt"));
        }

        post.setBodyAndExcerpt(LocalizedString.fromJson(jObj.get("body")), excerpt);
    }

    return post;
}
 
开发者ID:FenixEdu,项目名称:fenixedu-cms,代码行数:26,代码来源:SiteResource.java


示例6: createPageFromJson

import pt.ist.fenixframework.Atomic; //导入依赖的package包/类
@Atomic(mode = TxMode.WRITE)
private Page createPageFromJson(Site site, JsonObject jObj) {
    PermissionEvaluation.ensureCanDoThis(site, Permission.CREATE_PAGE);
    if (jObj.has("name") && !jObj.get("name").isJsonNull() && jObj.get("name").isJsonObject()) {
        Page page = new Page(site, LocalizedString.fromJson(jObj.get("name")));

        if (jObj.has("slug") && !jObj.get("slug").isJsonNull()) {
            page.setSlug(jObj.get("slug").getAsString());
        }

        if (jObj.has("published") && !jObj.get("published").isJsonNull()) {
            page.setPublished(jObj.get("published").getAsBoolean());
        }
        return page;
    }
    throw CmsDomainException.badRequest("page.missing.name");
}
 
开发者ID:FenixEdu,项目名称:fenixedu-cms,代码行数:18,代码来源:SiteResource.java


示例7: createMenuFromJson

import pt.ist.fenixframework.Atomic; //导入依赖的package包/类
@Atomic(mode = TxMode.WRITE)
private Menu createMenuFromJson(Site site, JsonObject jObj) {
    if (jObj.has("name") && !jObj.get("name").isJsonNull() && jObj.get("name").isJsonObject()) {
        PermissionEvaluation.ensureCanDoThis(site, Permission.CREATE_MENU);
        Menu menu = new Menu(site, LocalizedString.fromJson(jObj.get("name")));

        if (jObj.has("slug") && !jObj.get("slug").isJsonNull()) {
            menu.setSlug(jObj.get("slug").getAsString());
        }

        if (jObj.has("topMenu") && !jObj.get("topMenu").isJsonNull()) {
            menu.setTopMenu(jObj.get("topMenu").getAsBoolean());
        }
        return menu;

    }

    throw CmsDomainException.badRequest("menu.missing.name");
}
 
开发者ID:FenixEdu,项目名称:fenixedu-cms,代码行数:20,代码来源:SiteResource.java


示例8: createMenuItemFromJson

import pt.ist.fenixframework.Atomic; //导入依赖的package包/类
@Atomic(mode = TxMode.WRITE)
private MenuItem createMenuItemFromJson(Menu menu, JsonObject jObj) {
    ensureCanDoThis(menu.getSite(), LIST_MENUS, EDIT_MENU, CREATE_MENU_ITEM);

    MenuItem menuItem = new MenuItem(menu);

    if (jObj.has("name") && !jObj.get("name").isJsonNull() && jObj.get("name").isJsonObject()) {
        menuItem.setName(LocalizedString.fromJson(jObj.get("name")));
    }

    if (jObj.has("position") && !jObj.get("position").isJsonNull()) {
        menuItem.setPosition(jObj.get("position").getAsInt());
    }

    if (jObj.has("folder") && !jObj.get("folder").isJsonNull()) {
        menuItem.setFolder(jObj.get("folder").getAsBoolean());
    }

    if (jObj.has("url") && !jObj.get("url").isJsonNull()) {
        menuItem.setUrl(jObj.get("url").getAsString());
    }

    return menuItem;
}
 
开发者ID:FenixEdu,项目名称:fenixedu-cms,代码行数:25,代码来源:MenuResource.java


示例9: createComponent

import pt.ist.fenixframework.Atomic; //导入依赖的package包/类
@Atomic(mode = TxMode.WRITE)
private void createComponent(Page page, JsonObject json) throws Exception {
    ensureCanDoThis(page.getSite(), Permission.EDIT_PAGE_COMPONENTS);
    String componentType = json.get("type").getAsString();
    ComponentDescriptor descriptor = Component.forType(componentType);
    if (descriptor == null) {
        throw new IllegalArgumentException("Component '" + componentType + "' is unknown!");
    }
    if (descriptor.isStateless()) {
        @SuppressWarnings("unchecked")
        Class<? extends CMSComponent> type = (Class<? extends CMSComponent>) descriptor.getType();
        page.addComponents(Component.forType(type));
    } else {
        JsonObject params = json.get("parameters").getAsJsonObject();
        Component instance = descriptor.instantiate(params);
        if (instance instanceof StaticPost) {
            StaticPost staticPost = (StaticPost) instance;
            if (staticPost.getPost().getSite() == null) {
                throw CmsDomainException.notFound();
            }
        }
        page.addComponents(instance);
    }
}
 
开发者ID:FenixEdu,项目名称:fenixedu-cms,代码行数:25,代码来源:AdminComponents.java


示例10: duplicateTheme

import pt.ist.fenixframework.Atomic; //导入依赖的package包/类
@Atomic
public void duplicateTheme(CMSTheme orig, String type, String name, String description) {
    CMSTheme theme = new CMSTheme();
    theme.setType(type);
    theme.setName(name);
    theme.setDescription(description);
    theme.setBennu(orig.getBennu());
    theme.setExtended(orig.getExtended());
    theme.changeFiles(orig.getFiles());
    for (CMSTemplate originalTemplate : orig.getTemplatesSet()) {
        CMSTemplate tp = new CMSTemplate();
        tp.setTheme(theme);
        tp.setFilePath(originalTemplate.getFilePath());
        tp.setType(originalTemplate.getType());
        tp.setDescription(originalTemplate.getDescription());
        tp.setName(originalTemplate.getName());
    }
}
 
开发者ID:FenixEdu,项目名称:fenixedu-cms,代码行数:19,代码来源:AdminThemes.java


示例11: editPage

import pt.ist.fenixframework.Atomic; //导入依赖的package包/类
@Atomic(mode = TxMode.WRITE)
private void editPage(LocalizedString name, String slug, String template, Site s, Page p, boolean published, Group canView) {
    p.setName(name);
    if (!Objects.equals(slug, p.getSlug())) {
        ensureCanDoThis(s, Permission.CHANGE_PATH_PAGES);
        p.setSlug(slug);
    }
    CMSTheme theme = s.getTheme();
    if (s != null && s.getTheme() != null && theme != null) {
        CMSTemplate t = theme.templateForType(template);
        p.setTemplate(t);
    }
    if (p.getPublished() != published) {
        PermissionEvaluation.canDoThis(s, Permission.PUBLISH_PAGES);
        p.setPublished(published);
    }
    if (!p.getCanViewGroup().equals(canView)) {
        PermissionEvaluation.canDoThis(s, Permission.PUBLISH_PAGES);
        p.setCanViewGroup(canView);
    }
    Signal.emit(Page.SIGNAL_EDITED, new DomainObjectEvent<>(p));
}
 
开发者ID:FenixEdu,项目名称:fenixedu-cms,代码行数:23,代码来源:AdminPagesAdvanced.java


示例12: createSite

import pt.ist.fenixframework.Atomic; //导入依赖的package包/类
@Atomic
private void createSite(LocalizedString name, LocalizedString description, SiteBuilder builder, boolean published, String folder,
        boolean embedded, String themeType, Set<String> roles) {
    CmsSettings.getInstance().ensureCanManageSettings();
    if (builder !=null){
        builder.create(name, description);
    } else {
        Site site = new Site(name, description);
    
        ofNullable(folder).filter(t -> !Strings.isNullOrEmpty(t)).map(FenixFramework::getDomainObject).map(CMSFolder.class::cast)
                .ifPresent(site::setFolder);

        site.setEmbedded(ofNullable(embedded).orElse(false));
        site.updateMenuFunctionality();
        site.setPublished(published);

        ofNullable(roles).ifPresent(rolesSet->
                rolesSet.forEach(role -> new Role(FenixFramework.getDomainObject(role), site)));

        ofNullable(themeType).filter(t -> !Strings.isNullOrEmpty(t)).map(CMSTheme::forType).ifPresent(site::setTheme);

        SiteActivity.createdSite(site, Authenticate.getUser());
    }
}
 
开发者ID:FenixEdu,项目名称:fenixedu-cms,代码行数:25,代码来源:CreateSite.java


示例13: processPostChanges

import pt.ist.fenixframework.Atomic; //导入依赖的package包/类
@Atomic(mode = Atomic.TxMode.WRITE)
  public void processPostChanges(Site site, Post post, JsonObject postJson) {
LocalizedString name = Post.sanitize(LocalizedString.fromJson(postJson.get("name")));
LocalizedString body = Post.sanitize(LocalizedString.fromJson(postJson.get("body")));
LocalizedString excerpt = Post.sanitize(LocalizedString.fromJson(postJson.get("excerpt")));

String slug = ofNullable(postJson.get("slug"))
		.map(JsonElement::getAsString).orElse(post.getSlug());

if(!post.getName().equals(name)) {
	post.setName(name);
}
if(!post.getBody().equals(body) || (  post.getExcerpt()==null && excerpt!=null ) || !post.getExcerpt().equals(excerpt)) {
	post.setBodyAndExcerpt(body, excerpt);
}
if(!post.getSlug().equals(slug)) {
	post.setSlug(slug);
}

processCategoryChanges(site, post, postJson);
processFileChanges(site, post, postJson);
processPublicationChanges(site, post, postJson);
post.fixOrder(post.getFilesSorted());
Signal.emit(Post.SIGNAL_EDITED,new DomainObjectEvent<>(post));
  }
 
开发者ID:FenixEdu,项目名称:fenixedu-cms,代码行数:26,代码来源:AdminPostsService.java


示例14: delete

import pt.ist.fenixframework.Atomic; //导入依赖的package包/类
@Atomic
public void delete() {
    logger.info("Page " + getSlug() + " - " + getExternalId() + " of Site " + getSite().getSlug() +
            " deleted by user "+ Authenticate.getUser().getExternalId());
    Signal.emit(SIGNAL_DELETED, this.getOid());

    for (Component component : getComponentsSet()) {
        removeComponents(component);
        component.delete();
    }

    getMenuItemsSet().stream().forEach(MenuItem::delete);

    setTemplate(null);
    setSite(null);
    setCreatedBy(null);
    setViewGroup(null);
    deleteDomainObject();
}
 
开发者ID:FenixEdu,项目名称:fenixedu-cms,代码行数:20,代码来源:Page.java


示例15: getOrCreateCategoryForSlug

import pt.ist.fenixframework.Atomic; //导入依赖的package包/类
@Atomic
/**
 * searches for a {@link Category} by slug on this {@link Site} or if one does not exist, creates one.
 *
 * @param slug the slug of the {@link Category} wanted.
 * @param name {@link Category} name.
 * @return the {@link Category} with the given slug if it exists on this site, or null otherwise.
 */
public Category getOrCreateCategoryForSlug(String slug, LocalizedString name) {
    try {
        return categoryForSlug(slug);
    } catch (CmsDomainException e) {
        Category category = new Category(this, name);
        category.setSlug(slug);
        return category;
    }
}
 
开发者ID:FenixEdu,项目名称:fenixedu-cms,代码行数:18,代码来源:Site.java


示例16: delete

import pt.ist.fenixframework.Atomic; //导入依赖的package包/类
@Atomic
public void delete() {
    logger.info("Post " + getSlug()  + " - " + getExternalId() + " of Site " + getSite().getSlug() +
            " deleted by user "+ Authenticate.getUser().getExternalId());
    Signal.emit(SIGNAL_DELETED, this.getOid());

    setCreatedBy(null);
    setSite(null);
    setViewGroup(null);
    deleteFiles();
    setLatestRevision(null);

    getComponentSet().stream().forEach(Component::delete);
    getCategoriesSet().stream().forEach(category -> category.removePosts(this));
    getRevisionsSet().stream().forEach(PostContentRevision::delete);


    deleteDomainObject();
}
 
开发者ID:FenixEdu,项目名称:fenixedu-cms,代码行数:20,代码来源:Post.java


示例17: searchPartyCarPlate

import pt.ist.fenixframework.Atomic; //导入依赖的package包/类
@Atomic
private List<Party> searchPartyCarPlate(String nameSearch, String carPlateNumber, Long parkingCardNumber) {
    List<Party> result = new ArrayList<Party>();
    if (!StringUtils.isEmpty(carPlateNumber) || !StringUtils.isEmpty(nameSearch) || parkingCardNumber != null) {
        Collection<ParkingParty> parkingParties = Bennu.getInstance().getParkingPartiesSet();
        for (ParkingParty parkingParty : parkingParties) {
            if (parkingParty.getParty() != null) {
                if (satisfiedParkingCardNumber(parkingParty, parkingCardNumber)
                        && satisfiedPlateNumber(parkingParty, carPlateNumber) && satisfiedName(parkingParty, nameSearch)) {
                    result.add(parkingParty.getParty());
                }
            }
        }
    }
    return result;
}
 
开发者ID:ist-dsi-archive,项目名称:fenix-parking,代码行数:17,代码来源:ParkingManagerDispatchAction.java


示例18: runSantander

import pt.ist.fenixframework.Atomic; //导入依赖的package包/类
@Atomic
private static String runSantander(final String password, final String categoryCode, final String identificationCardCode,
        final Long parkingCardID) throws FenixServiceException {
    if (isAllowed(password)) {
        SantanderEntry entry = SantanderEntry.readByUsernameAndCategory(identificationCardCode, categoryCode);
        if (entry == null) {
            throw new UserDoesNotExistException();
        }
        if (entry.getPerson().getParkingParty() == null) {
            createParkingParty(entry.getPerson());
        }
        entry.getPerson().getParkingParty().setCardNumber(parkingCardID);
        return entry.getPerson().getUsername();
    } else {
        throw new NotAuthorizedException();
    }
}
 
开发者ID:ist-dsi-archive,项目名称:fenix-parking,代码行数:18,代码来源:SetParkingCardIdDA.java


示例19: renewParkingCards

import pt.ist.fenixframework.Atomic; //导入依赖的package包/类
@Atomic
private void renewParkingCards(List<ParkingParty> parkingParties, DateTime newEndDate, ParkingGroup newParkingGroup,
        String emailText) {
    DateTime newBeginDate = new DateTime();
    for (ParkingParty parkingParty : parkingParties) {
        parkingParty.renewParkingCard(newBeginDate, newEndDate, newParkingGroup);
        ParkingRequest parkingRequest = parkingParty.getLastRequest();
        if (parkingRequest != null && parkingRequest.getParkingRequestState() == ParkingRequestState.PENDING) {
            parkingRequest.setParkingRequestState(ParkingRequestState.ACCEPTED);
            parkingRequest.setNote(emailText);
        }
        String email = null;
        EmailAddress defaultEmailAddress = parkingParty.getParty().getDefaultEmailAddress();
        if (defaultEmailAddress != null) {
            email = defaultEmailAddress.getValue();
        }

        if (emailText != null && emailText.trim().length() != 0 && email != null) {
            ResourceBundle bundle = ResourceBundle.getBundle("resources.ParkingResources", I18N.getLocale());
            Sender sender = Bennu.getInstance().getSystemSender();
            ConcreteReplyTo replyTo = new ConcreteReplyTo(bundle.getString("label.fromAddress"));
            new Message(sender, replyTo.asCollection(), Collections.EMPTY_LIST, bundle.getString("label.subject"), emailText,
                    email);
        }
    }
}
 
开发者ID:ist-dsi-archive,项目名称:fenix-parking,代码行数:27,代码来源:ManageParkingCardsDA.java


示例20: duplicate

import pt.ist.fenixframework.Atomic; //导入依赖的package包/类
@Atomic
public OccupationPeriodBean duplicate(int newId, OccupationPeriodType newPeriodType) {

    if (newPeriodType == null) {
        throw new DomainException("label.occupation.period.duplicate.message");
    }

    OccupationPeriodBean newBean = new OccupationPeriodBean(newId);

    newBean.setOccupationPeriodType(newPeriodType);
    newBean.setIntervals(intervals);
    newBean.setOccupationPeriod(occupationPeriod);
    newBean.setSemester(semester);

    for (OccupationPeriodReference reference : references) {
        newBean.addReference(new OccupationPeriodReference(reference.getOccupationPeriod(), reference.getExecutionDegree(),
                newPeriodType, semester, reference.getCurricularYears()));
    }

    return newBean;
}
 
开发者ID:FenixEdu,项目名称:fenixedu-academic,代码行数:22,代码来源:OccupationPeriodBean.java



注:本文中的pt.ist.fenixframework.Atomic类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Java SmileGenerator类代码示例发布时间:2022-05-22
下一篇:
Java UserDataResponse类代码示例发布时间:2022-05-22
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap